arm指令集详解(超详细带实例)

arm指令集详解(超详细带实例)

ID:8969951

大小:122.00 KB

页数:24页

时间:2018-04-13

arm指令集详解(超详细带实例)_第1页
arm指令集详解(超详细带实例)_第2页
arm指令集详解(超详细带实例)_第3页
arm指令集详解(超详细带实例)_第4页
arm指令集详解(超详细带实例)_第5页
资源描述:

《arm指令集详解(超详细带实例)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、算术和逻辑指令ADC:带进位的加法(Additionwith Carry)ADC{条件}{S},,dest=op_1+op_2+carryADC 将把两个操作数加起来,并把结果放置到目的寄存器中。它使用一个进位标志位,这样就可以做比32位大的加法。下列例子将加两个128位的数。128位结果:寄存器0、1、2、和3第一个128位数:寄存器4、5、6、和7第二个128位数:寄存器8、9、10、和11。ADDSR0,R4,R8;加低端的字ADCSR1,R5,R9;加下一个字,带进位ADCSR2,R6

2、,R10;加第三个字,带进位ADCSR3,R7,R11;加高端的字,带进位如果如果要做这样的加法,不要忘记设置S后缀来更改进位标志。 ADD:加法(Addition)ADD{条件}{S},,dest=op_1+op_2ADD 将把两个操作数加起来,把结果放置到目的寄存器中。操作数1是一个寄存器,操作数2可以是一个寄存器,被移位的寄存器,或一个立即值:ADDR0,R1,R2;R0=R1+R2ADDR0,R1,#256;R0=R1+256ADDR0,R2,R3,LSL#1;R0=R2+(R3<<1

3、)加法可以在有符号和无符号数上进行。 AND:逻辑与(logical AND)AND{条件}{S},,dest=op_1ANDop_2AND 将在两个操作数上进行逻辑与,把结果放置到目的寄存器中;对屏蔽你要在上面工作的位很有用。操作数1是一个寄存器,操作数2可以是一个寄存器,被移位的寄存器,或一个立即值:ANDR0,R0,#3;R0=保持R0的位0和1,丢弃其余的位。AND的真值表(二者都是1则结果为1):Op_1Op_2结果000010100111 BIC:位清除(Bit Clear)BIC

4、{条件}{S},,dest=op_1AND(!op_2)BIC 是在一个字中清除位的一种方法,与OR位设置是相反的操作。操作数2是一个32位位掩码(mask)。如果如果在掩码中设置了某一位,则清除这一位。未设置的掩码位指示此位保持不变。BICR0,R0,#%1011;清除R0中的位0、1、和3。保持其余的不变。BIC真值表:Op_1Op_2结果000010101110译注:逻辑表达式为Op_1ANDNOTOp_2 EOR:逻辑异或(logical Exclusive OR)EOR{条件}{S}

5、,,dest=op_1EORop_2EOR 将在两个操作数上进行逻辑异或,把结果放置到目的寄存器中;对反转特定的位有用。操作数1是一个寄存器,操作数2可以是一个寄存器,被移位的寄存器,或一个立即值:EORR0,R0,#3;反转R0中的位0和1EOR真值表(二者不同则结果为1):Op_1Op_2结果000011101110 MOV:传送(Move)MOV{条件}{S},dest=op_1MOV 从另一个寄存器、被移位的寄存器、或一个立即值装载一个值到目的寄存器。你可以指定相

6、同的寄存器来实现NOP指令的效果,你还可以专门移位一个寄存器:MOVR0,R0;R0=R0...NOP指令MOVR0,R0,LSL#3;R0=R0*8如果R15是目的寄存器,将修改程序计数器或标志。这用于返回到调用代码,方法是把连接寄存器的内容传送到R15:MOVPC,R14;退出到调用者MOVSPC,R14;退出到调用者并恢复标志位(不遵从32-bit体系) MVN:传送取反的值(Move Negative)MVN{条件}{S},dest=!op_1MVN 从另一个寄存器、被移位的寄存器、或一个立即值

7、装载一个值到目的寄存器。不同之处是在传送之前位被反转了,所以把一个被取反的值传送到一个寄存器中。这是逻辑非操作而不是算术操作,这个取反的值加1才是它的取负的值:MVNR0,#4;R0=-5MVNR0,#0;R0=-1 ORR:逻辑或(logical OR)ORR{条件}{S},,dest=op_1ORop_2OR 将在两个操作数上进行逻辑或,把结果放置到目的寄存器中;对设置特定的位有用。操作数1是一个寄存器,操作数2可以是一个寄存器,被移位的寄存器,或一个立即值:ORRR0,R0,#3;设置R

8、0中位0和1OR真值表(二者中存在1则结果为1):Op_1Op_2结果000011101111 RSB:反向减法(Reverse Subtraction)RSB{条件}{S},,dest=op_2-op_1SUB 用操作数 two 减去操作数 one,把结果

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。