检测点10.1作业练习
assume cs:codestack segment
db 16 dup(0)
stack ends
code segment
start: mov ax,stack
mov ss,ax
mov sp,16
mov ax,1000h ;把1000h赋值低位
push ax
mov ax,0 ;把0h赋值高位
push ax
retf
code ends
end start 本帖最后由 jackz007 于 2020-3-5 23:02 编辑
这个代码和你的代码编译出来的执行效果完全一样
assume cs:code
stack segment stack
db 16 dup(0)
stack ends
code segment
start: mov ax,1000h ;把 1000h 赋值低位
push ax
mov ax,0 ;把 0h 赋值高位
push ax
retf
code ends
end start jackz007 发表于 2020-3-5 23:01
这个代码和你的代码编译出来的执行效果完全一样
其实我们看的就是为了让程序从1000:0000开始执行而已,所以上面那些赋值作用并不大,可有可无。 项羽姓秦 发表于 2020-3-5 23:20
其实我们看的就是为了让程序从1000:0000开始执行而已,所以上面那些赋值作用并不大,可有可无。
你还没有看出区别?我去掉的是堆栈段的赋值! jackz007 发表于 2020-3-5 23:26
你还没有看出区别?我去掉的是堆栈段的赋值!
我知道啊。 项羽姓秦 发表于 2020-3-5 23:32
我知道啊。
我想说的是,王爽的汇编语言教程写的很不怎么样,很多东西都没有讲,却莫名其妙地火,像堆栈段的定义和使用,就没有讲透彻。清华大学温冬婵、沈美明编写的《IBM PC 汇编语言程序设计》才是真正值得推崇的教材。 jackz007 发表于 2020-3-5 23:46
我想说的是,王爽的汇编语言教程写的很不怎么样,很多东西都没有讲,却莫名其妙地火,像堆栈段的定 ...
嗯,感谢兄弟推荐,确实很多讲的不详细,我也是比较难费解,你推荐的,我会看的。
页:
[1]