【发布时间】:2015-03-29 12:21:16
【问题描述】:
在组装和 8051 方面我是新手,所以我需要一点帮助。我想制作这个 Sum 程序,将 E887h 保存在 50h 中,将 77DDh 保存在 52h 中。然后它应该在 70 小时内对它们求和。我试着制作这个程序,但看起来我在某个地方做了我的赌注。这是我的代码:
mov 50h,#0E877h
mov 52h,#77DDh
mov a,50h
add a,52h
mov 70h,a
end
【问题讨论】:
在组装和 8051 方面我是新手,所以我需要一点帮助。我想制作这个 Sum 程序,将 E887h 保存在 50h 中,将 77DDh 保存在 52h 中。然后它应该在 70 小时内对它们求和。我试着制作这个程序,但看起来我在某个地方做了我的赌注。这是我的代码:
mov 50h,#0E877h
mov 52h,#77DDh
mov a,50h
add a,52h
mov 70h,a
end
【问题讨论】:
8051 是一个 8 位处理器,您需要将 16 位加法拆分为两个 8 位加法,注意进位。比如:
mov 50h, #77h # low byte
mov 51h, #0E8h # high byte
mov 52h, #0DDh # low byte
mov 53h, #77h # high byte
mov a, 50h # add
add a, 52h # low bytes
mov 70h, a # result low byte
mov a, 51h # add
addc a, 53h # high bytes and carry
mov 71h, a # result high byte
【讨论】: