汇编语言,求解释 a EQU 35 c EQU 27 AREA Text3,
发布网友
发布时间:2022-04-26 12:42
我来回答
共1个回答
热心网友
时间:2022-06-28 08:31
看样子是ARM的指令系统的汇编。
EQU是汇编的伪指令,给常数一个符号,帮助记忆、理解的。
AREA Text3,CODE,READONLY,这段是指定代码存放位置及相关存放位置的一些特性,一般照抄即可。
mov R0,#a ; 把常数35送到寄存器R0
mov R1,#c ;把常数27送到寄存器R1
AND R2,R1,#15;R1的内容与#15 按位相与,结果送R2。R1的内容是27,16进制表示是1BH,与的结果是R1的低4位,是0BH,送R2。
ORR R3,R2,R0,LSL #2;这个麻烦点,先R0的内容左移2位,即8CH,(注意R0的内容不变),8CH和R2的内容按位相或,R2的内容是0BH,相或的结果8FH,送R3。
ldr r2,=0x30200000;这个=是取地址的伪指令,具体的生成的指令会根据地址有所不同,结果是R2的内容变成0x3020000。
str r3,[r2];str是把r3的内容送到R2所指向的地址,最终的结果是0x3020000地址单元的内容变成前面的运算结果8FH。
END 是汇编结束伪指令,告诉编译器,下面没有了,有也不用管了。