【汇编指令】数据处理指令之算术指令集

ARM指令集:

其中包括数据处理指令集

1)算术指令(ADD,ADC,SUB,SBC , RSB, RSC )

①加法指令:ADD,ADDS

其中带S的表示可以更新标志位

ADD/ADDS

Add values and store result to register.

Syntax   ADD{cond}{S}  Rd, Rn, Op2
Description   Add Rn and Op2 and store result to Rd.
Condition Flags   If S is specified update flags: N, Z, C, V.
Example  
       ADDS  R0,R2,R4          //Add R2 and R4 and store result to R0, update flags
       ADD   R4,R4,#0xFF00     //Add value in 0xFF00 and R4 and store result in R4

②带进位的加法指令:ADC/ADDS

ADC

Add with Carry.

Syntax   ADC{cond}{S}  Rd, Rn,Op2
Description   Add Rn and Op2 and Carry flag and store result to Rd. ADC is typical used for multi-word arithmetic.
Condition Flags   If S is specified update flags: N, Z, C, V.
Example  
ADDS  R0,R2,R4       // add R2 + R4, store result to R0, set flags
ADC   R1,R3,R5       // add R3 + R5 with carry from previous ADDS, store result to R1

③反向减法指令;RSB/RSC

     rsb r0, r0, #100                ;r0 = 100 - r0
;表示把100减去R0的值存入r0中

时间: 2024-08-06 21:31:43

【汇编指令】数据处理指令之算术指令集的相关文章

X86汇编5.高级指令详解

最近学习了X86汇编,其实无论是古老的8086还是现在i3/5/7/9,Xeon3/5,在最基本原理上,都是相通的,只是CPU位数,寻址空间,寄存器个数,指令集的扩充等方面有所不同,对于学习,8086永不过时. 转移指令1.转移指令分类:(1)无条件转移指令,如: jmp(2)条件转移指令(3)循环指令,如: loop(4)过程(5)中断 操作符1.offset释义:由编译器处理的符号,功能是取得标号的偏移地址start: mov ax,offset start ;相当于mov ax, 0s:

汇编跳转指令B、BL、BX、BLX 和 BXJ的区别

跳转指令用于实现程序流程的跳转,在 ARM 程序中有两种方法可以实现程序流程的跳转: (1) 使用专门的跳转指令. (2) 直接向程序计数器 PC 写入跳转地址值. 通过向程序计数器 PC 写入跳转地址值,可以实现在 4GB 的地址空间中的任意跳转,在跳转之前结合使用 MOV LR , PC 等类似指令,可以保存下一条指令地址作为将来的返回地址值,从而实现在 4GB 连续的线性地址空间的子程序调用. 专门的跳转指令 B.BL.BX.BLX 和 BXJ: 跳转.带链接跳转(带返回的跳转).跳转并切

学 Win32 汇编[21] - 传送指令: MOV、LEA、XCHG、XLATB、XLAT、MOVZX、MOVSX

汇编指令的一般性要求: 1.两个操作数的尺寸必须一致; 2.操作数不能同为内存. MOV(Move): 最常用的数据传送指令 ;该指令不影响 EFlags ;指令格式: (其中的 r.m.i 分别表示: 寄存器.内存.立即数) MOV r/m, r/m/i ; Test21_1.asm .386 .model flat, stdcall include windows.inc include kernel32.inc include masm32.inc include debug.inc in

汇编中的指令对齐

title: 汇编中的指令对齐 tags: ARM date: 2018-10-23 20:50:39 --- 汇编中的指令对齐 搜索下官方文档的索引.align,有如下描述,也就是有两种情况,对于ARM,表示的是末尾几个0,也就是2^x了.具体填充格式可以指定align abs-expr, abs-expr, abs-expr,参考链接 For other systems, including ppc, i386 using a.out format, arm and strongarm, i

汇编-13.0-int指令

1.int指令 int指令的格式为:int n,n为中断类型码,它的功能是引发中断过程. 执行int n指令,相当于引发一个中断号为n的中断过程. (1).取中断类型码n: (2).标志寄存器入栈,IF=0,TF=0: (3).CS.IP入栈: (4).(IP)=(n*4),(CS)=(n*4+2). int指令的最终功能是和call指令相似,都是调用子程序. 2.编写应用程序调用的中断例程 (1). 功能:求一word型数据的平方. 参数:(ax)= 要计算的数据. 返回值:dx.ax中存放结

jsp的常用指令有哪些(编译指令/动作指令整理)

jsp的常用指令有哪些(编译指令/动作指令整理) JSP动作指令 JSP - JSP中的脚本.指令.动作和注释

探讨angularJS中指令与指令的通信

指令这节是最难也是最重要的一节,接下来我们来学习一下指令和指令之间是如何通信的. 一.我们要实现的效果如下: 二.源码示例 控制器部分代码示例 /* * accordion可折叠扩展菜单示例 * 涉及指令嵌套,指令与指令之间的通信 */ myDirec.controller("SomeController2",function($scope) { $scope.expanders = [{ title : 'Click me to expand', text : 'Hi there f

[email protected]指令与指令之间的交互demo

1.index.html: <!DOCTYPE HTML><html ng-app="app"><head>    <title>custom-directive</title>    <meta charset="utf-8">        <link rel="stylesheet" href="../css/bootstrap.css">

(尚016)Vue指令(11个自带指令+自定义指令)

1.Vue常用指令 1)v:text:更新元素的 textContent 2)v-html:更新元素的 innerHTML 3)v-if:如果为true,当前标签才会输出到页面 4)v-else:如果为false,当前标签才会输出到页面 5)v-show:通过控制display样式来控制显示/隐藏 6)v-for:遍历数组/对象(最终通过列表显示) 7)v-on:绑定事件监听,一般简写为@ 8)v-bind:强制绑定解析表达式,可以省略v-bind,简写为  : 9)v-model:双向数据绑定

前端Vue框架 02 斗篷指令:v-cloak, 指令: 属性指令:v-bind, 表单指令:v-model, 条件指令:v-show v-if, 循环指令:v-for

1.斗篷指令(了解) """ v-cloak:避免屏幕闪烁 1)属性选择器,会将v-cloak属性所在的标签隐藏 2)当vue环境加载后,会将v-cloak属性解析移除,所以内容{{ num }}就会显示出来 3)而现在vue已经准备完毕,所以用户会直接看到数值10,而不会看到 页面从{{ num }}闪烁成数值10 """ <style> [v-cloak] { display: none; } </style> <