马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
ADD与SUB——低寄存器加法和减法 对于低寄存器操作,这2条指令各有如下3种形式: 2个寄存器的内容相加或相减,结果放到第3个寄存器中; 寄存器中的值加上或减去一个小整数,结果放到另一个不同的寄存器中; 寄存器中的值加上或减去一个大整数,结果放回同一个寄存器。 格式 op Rd,Rn,Rm op Rd,Rn,#expr3 op Rd,#expr8 其中: Rd 目的寄存器。它也用作“op Rd,#expr8”的第1操作数。 Rn 第1操作数寄存器 Rm 第2操作数寄存器 Expr3 表达式或3位立即数,为取值在-7~+7范围内的整数。 Expr8 表达式或8位立即数,为取值在-255~+255范围内的整数。 用法 若expr3或expr8为负值,则ADD指令汇编成相应的带正数常量的SUB指令,SUB指令汇编成相对应的带正数常量的ADD指令。指令中的Rd、Rn和Rm必须是低寄存器。这些指令更新标志N、Z、C和V。 例子 ADD R3,R1,R5 SUB R0,R4,#5 ADD R7,#201 ADD——高或低寄存器 将寄存器中值相加,结果送回到第1操作数寄存器。 格式 ADD Rd,Rm 其中:Rd 目的寄存器,也是第1操作数寄存器 Rm 第2操作数寄存器 用法 这条指令将Rd和Rm中的值相加,结果放在Rd中Rd和Rm可以是R0~R15中的任何一个,而不限于只是低寄存器若Rd和Rm是低寄存器,则更新条件码标志N、Z、C和V。其他情况下不更新条件码标志。 注意:若Rd和Rm都是低寄存器,则指令“ADD Rd,Rm”汇编成指令“ADD Rd,Rd,Rm”。 例子 ADD R12,R4 ;R12<-R12+R4 ADD R10,R11 ;R10<-R10+R11 ADD R0,R8 ;R0<-R0+R8 ADD R2,R4 ;等价于“ADD R2,R2,R4” 凌阳教育,专注嵌入式人才培养多年,完善的培养方案,强大的师资,合理的课程安排,成功从小白蜕变为嵌入式工程师。想了解凌阳教育,或者获得更多嵌入式学习资料的免费下载,请点击www.sunplusedu.com访问凌阳教育官网 |