写的程序如下:
assume cs:code
code segment
dw 1,2,3,4,5,6,7,8
dw 0,0,0,0,0,0,0,0,0,0
start:mov ax,cs
mov ss,ax
mov sp,24h
mov ax,0
mov ds,ax
mov bx,0
mov cx,8
s: push [bx]
pop cs:[bx]
add bx,2
loop s
mov ax,4c00h
int 21h
code ends
end start
当在debug下执行时,在int 21h执行之前查看内存是正确的,可int 21h执行结束后结果就变了
当时我的cs是 0c45 而int 21h的地址是0c45:000c
个人认为是不是int 21h的执行会改变0c45:000c的内容? |