ARM汇编练习

1. 写一条 ARM 指令,分别完成下列操作:
    a) r0 = 16
    b) r0 = r1 / 16    (带符号的数字)
    c) r1 = r2 * 3
    d) r0 = -r0
a:MOV R0,#16
b:MOV R0,R1,ASR #4
说明:乘法是左移(左移1位是乘2)
      除法是右移(右移1位是除2)
c:ADD R1,R2,R2,LSL #2  ;R1=R2+R2*2(R2中的值不变)
d:MVN R0,R0
2. 下面哪些立即数是数据处理指令中有效的数据?
    a) 0x00AB0000     b) 0x0000FFFF     c) 0xF000000F  
    d) 0x08000012     e) 0x00001f80     f) 0xFFFFFFFF
a: 合法    b:  非法    c:合法    d:非法     e:合法  f:非法(mvn)
3. BIC指令做什么用?
位清零 
4. 为什么ARM 处理器增加了一条RSB 指令?
 SUB R0,R1,#0X12 
 SUB R0,#0X12, R1 ;错误
 
 方法一:
 RSB R0,R1,#0X12  ;R0=0X12-R1
 
 方法二:
 MOV R2,#0X12
 SUB R0,R2,R1

猜你喜欢

转载自blog.csdn.net/xiezhi123456/article/details/82846741
今日推荐