We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
What means this line in assembler?
__user_libspace: 0x10000AE0 ES813Bf3 ADD R3, R1, #0x0001CC00
instruction at the addr 0x10000AE0 called a ADD order to add value in R1 to R3 - but what about the #0x0001CC00?
R2 is no register, it is a address in the RAM, isn't it?
No, it is not. The ARM architecture is a load/store (also known as RISC) architecture, which means that data processing instructions cannot work with memory contents, but with registers and constants only.
R2, in this case, is a flexible second operand. What exactly that means is also explained in the ARM assembly docs.