读书人

侯佩兄请赐教!该怎么解决

发布时间: 2012-02-10 21:27:41 作者: rapoo

侯佩兄请赐教!!!
有如下程序(王爽《汇编语言》第88页)
===============================
assume cs:codesg
codesg segment
mov ax,2000h
mov ss,ax
mov sp,0
mov sp,4
pop ax
pop bx
push ax
push bx
pop ax
pop bx

mov ax,4c00h
int 21h
codesg ends
end

=================
请问为什么在调试时会在执行第一条pop ax指令时出错?而导致程序退出?
在下才疏学浅,然愿闻其详,还望不吝赐教!!

[解决办法]
老候还是很受欢迎啊
[解决办法]
你用什么调试的啊?
在DEBUG下直接输入:
-a 100
mov ax,2000h
mov ss,ax
mov sp,0
add sp,4
pop ax
pop bx
push ax
push bx
pop ax
pop bx
mov ax,4c00h
int 21h
进行调试,试试!应该不会出错^_^!我试过好几次都正确无误!
[解决办法]
是先编译成exe,
我也遇到上面的问题,昨晚看见这帖子又试了一下还是跟以前一样,
出现:NTVDM cpu遇到无效指令.
CS:0000 IP:0077 OP:F0 37 05 10 02
期待答案。。。
[解决办法]
建议在DOS下的debug下调试,不要在2000、xp下的cmd\debug下调试,因为这个环境就不太真实,再说指令没错,是环境的错误,何必在意呢?

读书人网 >汇编语言

热点推荐