第3章-MCS-51单片机指令系统-3.3.2-5算术-逻辑-控制-位.pptVIP

第3章-MCS-51单片机指令系统-3.3.2-5算术-逻辑-控制-位.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章-MCS-51单片机指令系统-3.3.2-5算术-逻辑-控制-位要点

* 乘法指令完成单字节的乘法, 只有一条指令:  MUL AB 这条指令的功能是: 将累加器A的内容与寄存器B中的8位无符号数相乘, 乘积的低 8 位存放在累加器A中, 高 8 位存放于寄存器B中。如果乘积超过0FFH, 则溢出标志OV置“1”, 否则清“0”。 进位标志CY总是被清“0”。 * 除法指令完成单字节的除法, 只有一条指令:  DIV AB 这条指令的功能是: 将累加器 A中的的 8 位无符号数除以寄存器 B中的8位无符号数, 所得商的整数部分存放在累加器A中, 余数部分存放在寄存器 B中, 清“0”进位标志Cy和溢出标志OV。 若原来 B中的内容为 0, 则执行该指令后 A与 B中的内容不定, 并将溢出标志OV置“1”, 在任何情况下, 进位标志CY总是被清“0”。 * 这组指令的功能是: 将两个操作数的内容按位进行逻辑与操作, 并将结果送回目的操作数的单元中。 当所寻址的寄存器不是A或PSW时,不影响任何标志,否则对标志位有影响。 * 这组指令的功能是: 将两个操作数的内容按位进行逻辑或操作, 并将结果送回目的操作数的单元中。 * 这组指令的功能是: 将两个操作数的内容按位进行逻辑异或操作, 并将结果送回到目的操作数的单元中。 * 1. 绝对转移指令 AJMP addr11 ;(PC)←(PC)+2 ;(PC10~0)← addr11 这条指令是2KB字节范围内的无条件跳转指令,它将程序的执行转移到指定的地址。因为指令提供11位目标地址装入程序计数器,而高5位不变,因此AJMP只能在2KB字节范围内跳转,即转入的存储单元地址的高5位地址编码与PC计数器当前值地址高5位必须相同,否则出现跨页错误,建议尽量不用该指令。 2. 长转移指令  LJMP addr16 ;(PC) ← addr16  执行该指令时, 将 16 位目标地址addr16 装入PC, 程序无条件转向指定的目标地址。转移的目标地址可以在 64 KB程序存储器地址空间的任何地方, 不影响任何标志。 为了使程序设计方便,addr16常采用符号地址表示,只有在上机执行前才被汇编为16位二进制地址。 3. 短转移指令 SJMP rel ;(PC) ← (PC) + 2 ;(PC) ← (PC)+rel 执行该指令时, 先将 PC+2, 再把指令中带符号的偏移量加到PC上, 得到跳转的目标地址送入PC。  rel的取值范围是-128~127。 rel可以用标号表示,执行该跳转语句后,程序将从标号所指示的指令开始运行。 例如: 若标号“NEWADD”表示转移目标地址0123H,PC的 当前值为0100H。 执行指令 SJMP NEWADD 结果:程序将转向 0123H 处执行(此时rel= 0123H-(0100+2)= 21H)。 4. 间接转移指令 JMP @A+DPTR ; (PC)←(A)+(DPTR) 执行该指令时, 把累加器 A中的 8 位无符号数与数据指针中的 16 位数相加, 结果作为下条指令的地址送入PC, 不改变累加器 A 和数据指针DPTR的内容, 也不影响PSW。 DPTR是一个确定的值,常常是一张转移指令表的起始地址,累加器 A 中的值为表的偏移量地址,机器可以通过该指令实现程序的分支转移。 例如:(A)=10H (DPTR)=2000H JMP @A+DPTR 结果: (PC)=2010H * 例如: 若标号“NEWADD”表示转移目标地址0123H,PC的 当前值为0100H。 执行指令 SJMP NEWADD 结果:程序将转向 0123H 处执行(此时rel= 0123H-(0100+2)= 21H)。 * 二、 条件转移指令 JZ rel; 若(A)= 0 则 (PC) ← (PC)+2+rel 否则(PC) ← (PC)+2 JNZ rel; (A)≠0 则 (PC) ← (PC)+2+rel  否则(PC) ← (PC)+2 这类指令是依据累加器A的内容是否为 0 的条件转移

您可能关注的文档

文档评论(0)

dajuhyy + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档