内容正文:
第三章 MCS-51 系列单片机指令系统
3.4 算术运算类指令
《单片机技术与应用》 高教版 第二版 魏寿明
CONTENTS
目录
01
学习目标
02
新课引入
03
新课教学
04
师生互动
05
课堂练习
06
课堂小结
学习目标
CATALOGUE
一
掌握算术运算类指令的基本概念
学会使用算术运算类指令进行编程
理解算术运算类指令在程序中的作用和意义
学习目标
新课引入
CATALOGUE
二
算术运算类指令是计算机编程中的基础指令,用于实现加、减、乘、除等基本数学运算。
这些指令在各种应用领域中都发挥着至关重要的作用,如科学计算、数据处理、控制系统等。
掌握算术运算类指令对于提高编程技能和解决实际问题具有重要意义。
算术运算类指令的背景和重要性
新课教学
CATALOGUE
三
算术运算类指令共有24条,包括加法指令、带进位加法指令、带借位减法指令、加1指 令、减1指令、乘除指令及十进制调整指令。
主要完成加、减、乘、除运算,以及增量、减量 和二一十进制调整操作。
算术运算结果将影响进位标志CY、 半进位标志AC、 溢出标志OV。 加减法运算结果将影 响 CY 、AC 、OV, 乘除运算只影响CY 、OV。
算数运算类指令
加法指令
这组指令被加数总是累加器A, 相加结果保存在累加器A 中,规则如下:
①如果 D7有进位,则CY=1, 否则,CY=0。
②如果 D3 有进位,则 AC=1, 否则, AC=0。
③如果 D6 有进位,而 D7没有进位,或者 D7 有进位,而D6 没有进位,则OV=1, 否则0V=0。
④如果相加结果在A中1的个数为奇数,则P=1, 否则 P=0。
加法指令
例1: (A)=53H,(RO)=0FCH, 执行如下指令:
ADD A,RO
执行结果为: (A)=4FH,CY=1,AC=0,0V=0,P=1。
例2: (A)=85H,(RO)=20H,(20H)=OAFH, 执行如下指令:
ADD A,@R0
执行结果为: (A)=34H,CY=1,AC=1,0V=1,P=1。
例3: (A)=85H,(20H)=OFFH,CY=1, 执行如下指令:
ADDC A,20H
执行结果为: (A)=85H,CY=1,AC=1,0V=0,P=1。
加法指令的应用场景
数学计算
在各种数学计算中,加法指令被广泛用于实现数值的相加操作。
数据处理
在处理大量数据时,加法指令可以帮助程序员快速地完成数据累加、统计等任务。
算法实现
在实现各种算法时,加法指令是必不可少的运算指令之一,如排序算法、搜索算法等。
带借位减法指令
这组指令的功能是从累加器A 中减去指定变量及借位位 CY 的值,差值存放在累加器A 中。在 MCS-51 指令系统中没有提供不带借位减法指令,但在“SUBB” 指令前加一条“CLR C”指令,先将 CY 清0,即可实现不带借位减法的功能。
减法指令会影响 PSW各标志位,在两个数相减时:
①如果位7有借位,则 CY=1, 否则 CY=0。
②如果位3有借位,则 AC=1, 否则AC=0。
③ 如 果D6 需借位,而D7不需借位,或者 D7需借位,而 D6 不需借位,则OV=1, 否则0V=0。
④相减的结果放在A 中,1的个数为奇数,则P=1, 否则P=0。
带借位减法指令
例: (A)=C9H,(R2)=54H,CY=1,执行如下指令:
SUBB A,R2
执行结果为: (A)=74H,CY=0,AC=0,0V=1。
在科学计算中,带借位减法指令可用于计算物理量、化学量和其他精确数值。
在工程计算中,带借位减法指令可用于计算几何尺寸、机械运动和其他工程量。
在游戏开发中,带借位减法指令可用于处理游戏逻辑、物理模拟和其他需要精确数值计算的部分。
在金融计算中,带借位减法指令可用于计算货币、股票和其他金融产品的价格和交易量。
带借位减法指令在各种需要精确算术运算的场景中都有应用,如科学计算、工程计算、金融计算和游戏开发等。
带借位减法指令的应用场景
乘、除法指令
乘法指令的功能是把累加器A 和寄存器B 中的两个8位无符号数相乘,将乘积16位数中 的低8位存放在A 中,高8位存放在B 中。若乘积大于FFH(255), 则溢出标志OV置 1 , 否 则 OV 清0。乘法指令执行后进位标志 CY 总为0。
除法指令的功能是把累加器A 中的8位无符号整数除以寄存器B 中的8位无符号整数, 所得商存于累加器A 中,余数存于寄存器B 中,进位标志位 CY 和溢出标志位 OV 均被清0。 若除数B 中的内容为0,溢出标志 OV 被 置 1 , 即OV=1,