关于王爽老师汇编语言第四章的实验问题
为什么在编译和连接后,在debug命令下不能没有 mov sp,0这一步而且这两步变成了一步。求大神解释?有没有大神来解决下? 本帖最后由 xiaosawanjava 于 2014-6-10 14:32 编辑
这个是因为movss,ax 屏蔽了中断,在给 ss 栈段寄存器赋值的时候 默认是和sp赋值紧接这 在一起的,如果不是这样那我只设置了ss 然后debug 就执行中断,此时中断压入的栈顶是错误的,因为我们都还没有设置sp的值
反正总的来说是这样字的,在给ss赋值的时候,下面一条指令是一起执行的:比如
mov ss,ax
mov ax,0
mov sp,0
这样你就看不到 mov ax,0 这句话的执行了,而mov sp,0 可以看到 xiaosawanjava 发表于 2014-6-10 14:30 static/image/common/back.gif
这个是因为movss,ax 屏蔽了中断,在给 ss 栈段寄存器赋值的时候 默认是和sp赋值紧接这 在一起的,如果 ...
是不是说再赋值ss的时候后面的那一条是一起执行的 fish-john 发表于 2014-6-10 16:49 static/image/common/back.gif
是不是说再赋值ss的时候后面的那一条是一起执行的
嗯,就是这样子的。
页:
[1]