用 DEBUG 单步调试时,它,也要使用你定义的堆栈。
如果想要单步调试,就必须,给 DEBUG 留出堆栈空间。
参考下图:
图中所用的堆栈地址:0FFF : 0012,
完全等于楼主所用的:1000 : 0002。
但是,我所定义的堆栈空间,已经是 18 字节。
按说应该没有问题的,我实际在WIN2003的虚拟做了如下测试:
debug
a 100
输入以下指令
mov ax,1000
mov ss,ax
mov sp,2
mov ax,2266
push ax
int 3
再g=100
然后查看内存
d 1000:0
显示正常
我估计可能你执行的时候没有指定开始执行的位置,所以会报错了