Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories

Welcome to the new platform of Programmer's Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use its exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.

ARM programming using Keil

Hi,I am new to the ARM programming area.I tried to run the below program in Keil uVision3 and I got the error....

*** ERROR L107: ADDRESS SPACE OVERFLOW
SPACE: CODE
SEGMENT: ARMex
LENGTH: 4000000CH
Program Size: data=0 const=16 code=1073741836
Target not created



AREA ARMex, CODE, READWRITE
ENTRY
org 0x40000000
start
MOV r0, #10
MOV r1, #3
ADD r0, r0, r1
END

I would like to know how I can make my program execution to jump to to the address location 40000000 whenever i start my program and how can i remove this error.

looking forward for ur answeres.

Thanks.

Comments

  • angelusMortisangelusMortis Posts: 141Member
    : Hi,I am new to the ARM programming area.I tried to run the below program in Keil uVision3 and I got the error....
    :
    : *** ERROR L107: ADDRESS SPACE OVERFLOW
    : SPACE: CODE
    : SEGMENT: ARMex
    : LENGTH: 4000000CH
    : Program Size: data=0 const=16 code=1073741836
    : Target not created
    :
    :
    :
    : AREA ARMex, CODE, READWRITE
    : ENTRY
    : org 0x40000000
    : start
    : MOV r0, #10
    : MOV r1, #3
    : ADD r0, r0, r1
    : END
    :
    : I would like to know how I can make my program execution to jump to to the address location 40000000 whenever i start my program and how can i remove this error.
    :
    : looking forward for ur answeres.
    :
    : Thanks.
    :

    hello,

    i've never used keil, but i've done similar things on the gba with armasm.
    you will have to tell the assembler that your code is located in 0x40000000. you should read your assembers manual to find out how to do it.
    i dont know what system you are coding for but probably the code on this system is written to a default area in memory. so you will additionaly have to move your code from this area to 0x40000000 before you can execute it.
Sign In or Register to comment.