Consider the following listing :
C51 COMPILER V8.06 000A F500 R MOV someVariable ,A 0092 120000 E LCALL ?C?ULCMP 0028 1100 E ACALL _printf
1. What does the 'R' mean ?
2. What does the 'E' mean ?
3. Are there any more such "letters" ? If so, where can I read more about them ?
Warm regards
Vimal
I understand E means External Symbol since it comes from a library, but what is meant by an instruction being relocatable and non relocatable ?
Can someone care to highlight a few imporant differences ?
Well he did say "expression" not "instruction", so wouldn't you say that it is someVariable that is likely to be relocatable?
I don't get the meaning of a relocatable expression. I would be happy if someone cared to explain it to me
"Relocatable" in the compiler listing means that the location is not fixed by the compiler - it is left to the Linker/Locator to decide the location.
(I don't think the Keil 8051 tools support run-time relocation)
Of course you could have searched for yourself, but I've done it for you:
http://www.keil.com/support/man/docs/a51/a51_wp_relocatable.htm
Thanks Dan for letting me be lazy !
It did not occur to me to search... I apologize.