如何在Intel 8085中使用Stack添加四个数据字节?

时间:2017-01-01 12:49:41

标签: assembly 8085

我需要使用堆栈添加4个字节的数据03H,02H,05H,01H,并将结果存储在i8085微处理器中的3350H中。数据字节来自从3300H开始的4个连续存储器位置。怎么去做这个? 到目前为止,我已经这样做了:

LXI SP,3599H    ;Stack initialised
MVI L,00H   
PUSH H
POP PSW         ;Flags Cleared
LXI H,3300H
PUSH H
INX H
PUSH H
INX H
PUSH H
INX H
PUSH H
MVI A,00H
POP B
ADD B
POP B
ADD B
POP B
ADD B
POP B
ADD B
STA 3350H
HLT    

我确信这不是一个好方法,因为有很多重复。可以使用某种循环来使其更好地工作吗?

1 个答案:

答案 0 :(得分:0)

“使用堆栈”位似乎有意义的唯一方法是将SP设置为3300H,将数据从堆栈(3300H和3301H)弹出到寄存器对(比如BC),将B添加到A,将C添加到A,将接下来的两个数据字节弹出到BC(3302H和3303H),重复添加,然后将A存储到3350H。这样你就“使用堆栈”将数据从内存中取出到寄存器中,这样你就可以进行数学运算了。做任何事之前都是零A.

祝你好运。