大门|大门-CS-2003 |问题48

为一个假设的处理器考虑下面的汇编语言程序。A、 B和C是8位寄存器。各种说明的含义如注释所示。

null
MOV B,#0 ; B← 0
电影C#8 ; C← 8.
Z: CMP C,#0 ; 比较C和0
JZX ; 如果设置了零标志,则跳转到X
C分项工程#1 ; C← C-1
RRC A,#1 ; 将进位右转一位。因此:
; 如果A和进位标志的初始值为 A. 7. …a 0
; C 0 分别是执行本协议后的价值观
; 指示将是 C 0 A. 7. …a 1. 还有 0 分别地
JC Y ; 如果设置了进位标志,则跳转到Y
JMP Z ; 跳到Z
Y: 加B,#1 ; B← B+1
JMP Z ; 跳到Z
X:

(A) A0中的0位数 (B) A0中的1位数 (C) A0 (D) 8. 答复: (B) 说明: 答复: (B)

说明:

说明:只有当进位标志为1且进位始终使用右旋转填充时,B的值才会增加1。所以B将把1的数量存储在A0中。 RRC指令是( 累加器的每个二进制位向右旋转一个位置。位D0位于D7的位置以及进位标志中。CY根据位D0进行修改。任何其他位都不受影响)。所以A=A0,在执行RRC A,#1之后,进位标志被设置,它转到Y,即B=B+1,它变成B=0+1=1,所以(B)是正确的选项 这个问题的小测验

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享