单片机-第三章:指令系统(3).ppt

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片微型计算机原理与接口技术 之 80C51单片微机的 指令系统(3) 王贤勇 算术运算类指令 什么是算术? Arithmetic is the branch of mathematics dealing with integers or, more generally, numerical computation. Arithmetical operations include addition, congruence calculation, division, factorization, multiplication, power computation, root extraction, and subtraction. Arithmetic was part of the quadrivium taught in medieval universities. 算术运算类指令特点 通过ALU 无符号数运算 问题:对有符号数怎么处理? 助记符有 add、addc、inc、da、subb、dec、mul、div 影响标志 除增1减1指令外,都影响cy、ac、ov标志 加法指令 助记符 add 目的操作数 只能是累加器 a 指令 add a,Rn add a,direct add a,@Ri add a,#data 带进位加法指令 助记符 addc 目的操作数 只能是累加器 a 指令 addc a,Rn addc a,direct addc a,@Ri addc a,#data 一般用于多字节数运算 增量(加1)指令 助记符 inc 指令 inc Rn inc direct inc @Ri inc a inc dptr 不影响标志位 P除外 端口操作 “读-改-写” 二-十进制调整指令 指令 da a 只是对压缩的BCD码加法结果调整 怎么调整 根据 a 的原始数值和 psw 的状态,决定是否对 a 进行加 06h 或 60h 或 66h 的操作 为什么 十进制是满十进一,而按二进制运算时,对BCD码却是满十六进一 二-十进制调整方法 当累加器低四位大于9或半进位标志ac=1时,进行低四位加6修正 当累加器高四位大于9或进位标志cy=1时,进行高四位加6修正 如 (a) =56h (r3)=67h (cy)=1 执行 addc a,r3 (a)=beh beh+66h=124h 带借位减法指令 助记符 subb 目的操作数 只能是累加器 a 指令 subb a,Rn subb a,direct subb a,@Ri subb a,#data 没有不带借位减法指令 思考题 怎么处理不带借位减法? 减1指令 助记符 dec 指令 dec Rn dec direct dec @Ri dec a 不影响标志位 真的吗? 端口操作 “读-改-写” 二-十进制调整指令:减法 遗憾 没有相应的指令!!! 怎么办? 补码运算 谁的补码? 100的 9ah代表100 例 25h-8h=? mov a,#9ah clr c subb a,#08h add a,#25h da a 乘法/除法指令 乘法 mul ab 结果 b:乘积高8位 a:乘积低8位 b 不为零,则 ov 为 1;否则为 0 除法 div ab 结果 (a)÷(b)=(a)……(b) 除数为 0 则 ov 为 1 小结 课间休息 * * 例子 设(a) = C3H (R0)= AAH 执行指令 add a,R0 1 1 0 0 0 0 1 1 + 1 0 1 0 1 0 1 0 ——————— 1 0 1 1 0 1 1 0 1 (a)=? (cy)=? (ov)=?(ac)=? ab ab mul 乘法 ab ab div 除法 同增1 同增1 dec 减1 同加法 a subb 减法(借位) a a da BCD调整 同左 Rn,direct,@Ri,a,dptr inc 增1 同上 a addc 加法(进位) Rn,direct,@Ri,#data a add 加法 源操作数 目的操作数 助记符 运算

文档评论(0)

wxc6688 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档