|
主题 : : 栈段清零问题 [待解决] |
回复[ 5次 ]
点击[ 374次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2010-08-27 09:37 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-08-15 01:32 |
代码如下:
assume cs:code
data segment
db 'welcome to masm!',0
data ends
stack segment
dw 1,2,3,4,5,6,7,8
stack ends
当查看内存栈段的时候显示的是
01 00 02 00 03 00 70 14 00 00 15 00 71 14 45 oe
何解? | | |
|
|
|
|
[第1楼]
[ 回复时间:2010-09-14 13:33 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:0
注册日期:2010-09-13 18:17 |
assume cs:code
data segment
db 'welcome to masm!',0
data ends
stack segment
dw 1,2,3,4,5,6,7,8
stack ends
code segment
start:
code ends
end start
这样就对了 | | |
|
|
|
|
[第2楼]
[ 回复时间:2010-09-27 15:48 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-09-27 15:00 |
|
|
|
|
|
[第3楼]
[ 回复时间:2010-09-28 09:43 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-09-14 02:19 |
assume cs:code
data segment
db 'welcome to masm!',0
data ends
stack segment
dw 1,2,3,4,5,6,7,8
stack ends
code segment
start:
mov ax,data ;查看data段的地址
mov ax,stack ;查看stack段的地址
code ends
end start
;使用上述代码查看data,stack都正常,而不是楼主所说的情况。楼主是否把地址弄错了,请仔细看地址变换部分的内容。 | | |
|
|
|
|
[第4楼]
[ 回复时间:2010-10-22 17:37 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-10-22 17:30 |
dw定义的数据是2字节,所以会显示0100这种格式 | | |
|
|
|
|
[第5楼]
[ 回复时间:2010-10-28 20:04 ]
[引用]
[回复]
[ top ] | |
荣誉值:10
信誉值:0
注册日期:2009-06-25 23:01 |
没有初始化stack(ss, sp),编译器不知道从哪里写入数据。 | | |