- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章:8051指令系统3
3.3 算术运算指令 3.3.1 加法、减法指令 3.3.2 乘法、除法指令 3.3.3 加1、减1指令 3.3.4 十进制调整指令 3.3.5 算术运算类指令应用实例 3.3.1 加法、减法指令 1. 不带进位的加法指令 汇编指令格式 机器指令格式 操 作 ADD A,Rn 28H~2FH A ← (A)+(Rn) ADD A,direct 25H direct A ← (A)+(direct) ADD A,@Ri 26H~27H A ← (A)+((Ri)) ADD A,#data 24H data A ← (A)+#data 注意: 当和的第3位或第7位有进位时,分别将AC、CY标志位置1;否则为0。如果第6位向第7位有进位而第7位没有向前进位,或者如果第7位向前有进位而第6位没有向第7位进位,OV=1,否则OV=0。该操作也影响标志位P。 【例3-10】已知累加器A的内容为E7H,(30H)=97H,则指出执行指令ADD A,30H后的结果和各标志位的状态。 解: 1110 0111B + 1001 0111B 1(Cy) 0111 1110B 执行后,A=7EH,Cy=1,AC=0,P=0,OV=1。 3.3.1 加法、减法指令 2. 带进位加法指令 汇编指令格式 机器指令格式 操 作 ADDC A,Rn 38H~3FH A ← (A) +(Rn) +CY ADDC A,direct 35H direct A ← (A)+(direct)+CY ADDC A,@Ri 36H~37H A ← (A)+((Ri))+CY ADDC A,#data 34H data A ← (A)+#data+CY 注意:本指令的执行将影响标志位AC、CY、OV、P,与 ADD指令相同 。 ADDC与ADD指令的区别就是相加时再加上Cy,其余功能一样。 【例3-11】已知累加器A的内容为A7H,R0=30H,(30H)=5BH,Cy=1,则指出执行指令ADDC A,@R0后的结果和各标志位的状态。 解: 1010 0111B 0101 1011B + 1 Cy 1(Cy) 0000 0011B 执行后,A=03H,Cy=1,AC=1,P=0,OV=0。 3.3.1 加法、减法指令 3. 带借位减法指令 汇编指令格式 机器指令格式 操 作 SUBB A,Rn 98H~9FH A ← (A)-CY-(Rn) SUBB A,direct 95H direct A ← (A)-CY-(direct) SUBB A,@Ri 96H~97H A ← (A)-CY-((Ri)) SUBB A,#data 94H data A ← (A)-CY-#data 注意:减法指令都是带进位位减法。执行不带借位的运算时,可在“SUBB”指令前用“CLR C”指令将CY清0。如果第7位有借位,则CY置1,否则清0。若第3位有借位,则AC置1;否则清0。两个带符号数相减,还要考查OV标志,若OV为1,表示差数溢出,即破坏了正确结果的符号位。该操作也影响标志位P。 【例3-12】已知累加器A=A7H,R0=58H,Cy=0,则指出执行指令SUBB A,R0后的结果和各标志位的状态。 解: 1010 0111B - 0101 1000B - 0 Cy 0(Cy) 0100 1111B 执行后,A=4FH,Cy=0,AC=1,P=1,OV=1。 说明: (1)当加、减法运算结果的最高位有进位或有借位时,Cy=1,否则Cy=0。 (2)当加、减法运算时,低4位向高4位有进位或者借位时,AC=1,否则AC=0。 (3)在加、减法过程中,D6和D7未同时产生进位或者借
文档评论(0)