assume cs:b,ds:a,ss:c
a segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
a ends
c segment
dw 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
c ends
b segment
d: mov ax,c
mov ss,ax
mov sp,20h ;希望用c段当做栈空间,设置ss:sp指向c:20
mov ax,a
mov ds,ax ;希望用ds:bx访问a段中的数据,ds指向a段
mov bx,0
mov cx,8
s: push [bx]
add bx,2
loop s ;以上将a段中的0~15单元中的8个字型数据依次入栈
mov bx,0
mov cx,8
s0:pop [bx]
add bx,2
loop s0 ;以上依次出栈8个字型数据到a段得0~15单元中
mov ax,4c00h
int 24h
b ends
end d ;d出是要执行的第一条指令,即程序的入口
上面这个代码,是从王老师的书上抄来的,但是在WIN-MASM中运行的时候,不知道为什么会提示下面的错误
syntax error : c
这些错误,高手帮忙下,小弟刚学汇编的!根据语法规则,我觉得没错,但是想不通为什么哪里错了!
------解决方案--------------------------------------------------------
亂猜一個,內存對齊~