标题: [求助]关于XCHD的问题 [打印本页]

作者: nanakorika    时间: 2010-10-6 11:49
标题: [求助]关于XCHD的问题

设(A)=40H,(R1)=23H,(40H)=05H。执行下列两条指令后,累加器A和R1以及内部RAM中40H单元的内容各为何值?
XCH A,R1
这个好理解 直接转换就行了 A=23H,R1=40H (40H)=05H

XCHD A,@R1
网上查了下解答,结果为:A=25H (40H)=03H,R1=40H


但是我根据上面的理解


就是把A的内容05H与R1的内容23H的低4位进行交换,高4位不变啊
A 原来的内容为05H ,R1原来的内容为23H
交换后A 变为03H,R1变为25H

应该得到结果为:R1=25H,A=40H,40H=03H才对啊

 

要是题目为(R1)=40H  (40H)=05H (A)=23H

XCHD A,@R1 后
那么结果就为 A=25H (40H)=03H,R1=40H


哪位高手帮忙,都搞糊涂了

[此贴子已经被作者于2010-10-6 11:54:13编辑过]

作者: a33403916    时间: 2010-10-12 01:03

你的思维好混乱!

 

设(A)=40H,(R1)=23H,(40H)=05H。执行下列两条指令后,累加器A和R1以及内部RAM中40H单元的内容各为何值?
XCH A,R1       ;这个好理解 直接转换就行了 A=23H,R1=40H (40H)=05H    ————正确
XCHD A,@R1   ;网上查了下解答,结果为:A=25H (40H)=03H,R1=40H————————正确

 

要是题目为(R1)=40H  (40H)=05H (A)=23H  XCHD A,@R1 后 那么结果就为 A=25H (40H)=03H,R1=40H

——————————————————正确

 

那两条指令是连续执行,不是分开独立的。

执行完XCH  一成了"要是题目为(R1)=40H  (40H)=05H (A)=23H" 

 

 

 






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1