手机版

单片微型计算机原理与接口技术答案(第二版)高峰(12)

发布时间:2021-06-11   来源:未知    
字号:

制数相加之后,必须经过该指令的调整才能得到压缩型BCD码的和数。“DA A”指令对两个BCD码的减法结果不能进行调整。

BCD码采用4位二进制数编码,并且只采用了其中的10个编码,即0000~1001,分别代表BCD码0~9,而10lO~1111为无效码。当两个BCD码相加结果大于9时,说明已进入无效编码区;当两个BCD码相加结果有进位时,说明已跳过无效编码区。若结果进入或跳过无效编码区,则结果是错误的,相加结果均比正确结果小6(差6个无效编码)。

十进制调整的修正方法为:当累加器低4位大于9或半进位标志AC=1时,进行低4位加6修正;当累加器高4位大于9或进位标志CY=l时,进行高4位加6修正。

【3一11】说明80C51单片机的布尔处理机的构造及功能。

【答】80C51单片机内部有一个布尔(位)处理机,具有较强的布尔变量处理能力。布尔处理机实际上是一位微处理机,它包括硬件和软件。布尔处理机以进位标志CY作为位累加器,以80C51单片机内部RAM的20H~2FH单元及部分特殊功能寄存器为位存储器,以80C51单片机的PO、P1、P2和P3为位I/O。

对位地址空间具有丰富的位操作指令,包括布尔传送指令、布尔状态控制指令、位逻辑操作指令及位条件转移指令,为单片机的控制带来很大方便。

【3—12】试分析以下程序段的执行结果。

MOV SP,#60H

MOV A,#88H

MOV B,#OFFH

PUSH ACC

PUSH B

POP ACC

POP B

【答】结果如下:

MOV SP,#60tt ;(SP)=60H

NOV A,#88tt ;(A)=88H

MOV B.#0FFH ;(B)=FFH

PUSH ACC ;(SP)=61H,(61H)=88H

PUSH B ;(SP)=62H,(62H)=FFH

POP ACC ;(A)=FFH,(SP)=61H

POP B ;(B)=88H,(SP)=60H

程序段的执行结果:累加器A和寄存器B的内容通过堆栈进行了交换。

注意:80C51单片机的堆栈是按照先进后出的原则进行管理的。

【3-1】已知(A)=7AH,(RO)=30H,(30H)=A5 H,(PSW)=80H。请填写各条指令单独执行后的结果。

(1) XCH A,R0

(2) XCH A,30tt

(3) XCH A,@R0

(4) XCHD A,@R0

(5)SWAP A

(6) ADD A,R0

(7) ADD A,30H

(8) ADD A,#30H

(9) ADDC A,30H

单片微型计算机原理与接口技术答案(第二版)高峰(12).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)