【发布时间】:2019-10-23 15:00:38
【问题描述】:
Here is the question我正在尝试在emu8086中编写一个程序。这个程序是关于内存操作和数组的。内存传输操作必须在数据段完成。而且我必须将我的元素存储在内存地址中。(例如:从 DS:[2000h] 到 DS:[2009h])
data segment
arr db 1,2,3,4,5,6,7,8,9,10
ends
code segment
start:
xor ax , ax
lea si ,arr
mov cx , 10
add:
add ax,[si]
add si,2
loop add
ends
我对寻址数组元素感到困惑。
【问题讨论】:
-
您的数组被声明为字节数组,而您的代码将其视为字数组。这样的不匹配是行不通的。要么将数组声明为 word (dw),要么在代码中使用字节操作。如果您想要一个更好的答案,您可以更新一个问题。