单片机中 已知PSW=90H,执行下列程序后,分析寄存器的A和PSW得值 mov A,#34H addc A,#8BH (A)=?(psw)=?

请把 计算过程 详细解答 谢谢了

(A)=C0H,(PSW)=50H
PSW不敢确定,也有可能是40H (如果rs0和rs1被修改了的话)追问

对 你打的对 怎么做的啊 过程 谢谢了

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-01-08
执行以上两句之后,A为0xC0,PSW为0x50。

首先:
MOV A, #34H
执行此句后,A被装载0x34。由于34H中“1”的个数为3,是个奇数,因此PSW中的P位置位,PSW从0x90变为0x91。

ADDC A, #8BH
执行此句后,A被加上0x8B,同时因原CY位为1,因此还要再加上1,因此累加的结果为0x34+0x8B+0x01 = 0xC0。由于C0H中“1”的个数为2,是个偶数,因此PSW中的P位清零;同时因为未再产生进位,因此CY位清零,因此PSW将从0x91变为0x50。