下载此文档

算数运算指令.ppt


文档分类:IT计算机 | 页数:约14页 举报非法文档有奖
1/14
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/14 下载此文档
文档列表 文档介绍
第二讲(3)
算术运算类指令(24条)
Arithmetic Operations
主要对8位无符号数;也可用于带符号数运算。
包括:加、减、乘、除、加1、减1运算指令
影响PSW有关位。
1. 加法指令(13条)
ADD A,#data ; (A)+data→(A)
ADD A,direct ; (A)+(direct )→(A)
ADD A,Rn ; (A)+(Rn)→(A)
ADD A,***@Ri ; (A)+(Ri)→(A)
用途:将A中的值与源操作数所指内容相加,最终结果
存在A中。
(1)不带进位位的加法指令(4条)
例1:ADD A,#47H
ADD A,34H
ADD A,R7
ADD A,***@R0
例2: MOV A,#0AEH ;-82D
ADD A,#81H ;-127D
则执行完本条指令后,A中的值为2FH;
C=1,AC=0,OV=1,P=1。
对无符号数:结果为12FH;
带符号数运算:OV=1,有错。
实验验证一下本例
(2)带进位位的加法指令(4条)
ADDC A,Rn ; A+Rn+CY→A
ADDC A,direct ; A+(direct )+CY→A
ADDC A,***@Ri ; A+(Ri)+CY→A
ADDC A,#data ; A+data+CY→A
用途:将A中的值和其后面的值以及进位位C中的值相加,
最终结果存在A,常用于多字节数运算中。
说明:由于51单片机是一种8位机,所以只能做8位的数学运算,但8位运算的范围只有0~255,这在实际工作中是不够的,因此就要进行扩展,一般是将2个8位(两字节)的数学运算合起来,成为一个16位的运算,这样,可以表达的数的范围就可以达到0~65535。
例:
先做67H+A0H=107H,而107H显然超过了0FFH,因此最终保存在A中的是07H,而1则到了PSW中的CY位了。换言之,CY就相当于是100H。
然后再做10H + 30H + CY,结果是41H,所以最终的结果是4107H。
1067H+30A0H
0001 0000 0110 0111
0011 0000 1010 0000
0100 0001 0000 0111
1067H
30A0H
4107H
设:1067H存在R1R0中, 30A0H存在R3R2中,计算R1R0+R3R2,结果存在R5R4中。
MOV A,R0
ADD A,R2 ;R0+R2→A和CY
MOV R4,A
MOV A,R1
ADDC A,R3 ;R1+R3+CY→A和CY
MOV R5,A
又例:
先做67H+20H=87H,没有超过0FFH,因此最终保存在
A中的是87H,而PSW中的CY=0。
然后再做10H + 30H + CY,结果是40H,所以最终的结果
是4087H。
1067H+3020H
0001 0000 0110 0111
0011 0000 0010 0000
0100 0000 1000 0111
1067H
3020H
4087H
实验验证一下本例
设:1067H存在R1R0中, 3020H存在R3R2中,计算R1R0+R3R2,结果存在R5R4中。
(3) 加1指令(5条)
INC A ;A+1→A
INC Rn ;Rn+1→Rn
INC direct ;(direct)+1→(direct)
INC ***@Ri ;(Rn)+1→(Rn)
INC DPTR ;DPTR+1→DPTR
功能很简单,就是将后面目标中的值加1。
例:A=12H,R0=33H,(21H)=32H,
(34H)=22H,DPTR=1234H。
连续执行下面的指令:
INC A
INC R0
INC 21H
INC ***@R0
INC DPTR
; A=13H
; R0=34H
;(21H)=33H
;(34H)=23H
; DPTR=1235H
2. 减法指令(8条)
SUBB A,Rn ; A-Rn-CY→A
SUBB A,direct ; A-(direct )-CY→A
SUBB A,***@Ri ; A-(Ri)-CY→A
SUBB A,#data ; A-data-CY→A
将A中的值减去源操作数所指内容以及进位位C中的
值,最终结果存在A中。
如: SUBB A,R2
设: (A)=C9H,(R2)=55H,(CY)=1,
执行指令之后,A中的值为73H。
(1) 带借位的减法指令(4条)
说明:没有不带借位的减法指令,如果需要做不带借位的减法指令(在做第一次相减时),只要将CY清零即可。
对带符号数,要注意OV标志。OV=1,出错。
2. 减1指令(4条)
DEC A ;A-1→A,影

算数运算指令 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数14
  • 收藏数0 收藏
  • 顶次数0
  • 上传人aideliliang128
  • 文件大小126 KB
  • 时间2017-12-23