下载此文档

51单片机课程 第5次课.ppt


文档分类:高等教育 | 页数:约38页 举报非法文档有奖
1/38
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/38 下载此文档
文档列表 文档介绍
2 算术运算类指令(24条)
Arithmetic Operations
主要对8位无符号数;也可用于带符号数运算。
包括:加、减、乘、除、加1、减1运算指令
影响PSW有关位。
算术运算类指令(6种/24条)
加法运算: (ADD——4条)
带进位加法运算: (ADDC——4条)
带借位减法运算: (SUBB——4条)
加1/减1操作: (INC,DEC——9条)
单字节乘/除法运算: (MUL,DIV——2条)
十进制调整: (DA A——1条)
加法运算: (ADD——4条)
带进位加法运算: (ADDC——4条)
带借位减法运算: (SUBB——4条)
所有的加法(ADD)、带进位加法(ADDC)、带借位减法(SUBB)运算都是以 A为一个加数或被减数,最终结果也存进 A 。
加法(ADD)、带进位加法(ADDC) 以及带借位减法(SUBB)运算中,如果产生了进位或借位,将自动对PSW中的Cy标志位置“1”。
带进位加法(ADDC):(A)(A)+(Cy)+(第二操作数)带借位减法(SUBB):(A)(A)-(Cy)-(第二操作数)



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中。
(4条)
加法指令
例:设(A)=49H,(R0)=6BH
执行: ADD A,R0
结果:CY=?,AC=?,P=?,OV=?,
(A)=?
CY=0,AC=1,P=0,OV=1, (A)=B4H
(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

51单片机课程 第5次课 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数38
  • 收藏数0 收藏
  • 顶次数0
  • 上传人85872037
  • 文件大小243 KB
  • 时间2018-07-04