. : : Assembly Language : : .
|
首页
|
我提出的问题
|
我参与的问题
|
我的收藏
|
消息中心
|
游客 登录
|
刷新
|
提问
|
未解决
|
已解决
|
精华区
|
搜索
|
《汇编语言》论坛
->
寄存器(内存访问)
管理员:
assembly
[
回复本贴
]
[
收藏本贴
] [
管理本贴
] [
关闭窗口
]
主题 : :
P38 问题3.11的问题
[待解决]
回复[
4
次 ] 点击[
374
次 ]
linqir
[帖 主]
[ 发表时间:2009-10-11 18:50 ]
[
引用
]
[
回复
]
[
top
]
荣誉值:0
信誉值:0
注册日期:2009-10-09 19:28
为什么说最底部的字单元是1000:FFFE,
还说SS:SP指向栈顶单元,当栈中只有一个元素的时候,不是一次在10000和10001地址里面,如果指向栈顶的话,SP应该为0003啊,怎么会是FFFE
linqir
[第
1
楼]
[ 回复时间:2009-10-11 18:51 ]
[
引用
]
[
回复
]
[
top
]
荣誉值:0
信誉值:0
注册日期:2009-10-09 19:28
还有,10000是栈底,1FFFF是栈顶吧?
eax001
[第
2
楼]
[ 回复时间:2009-10-12 20:54 ]
[
引用
]
[
回复
]
[
top
]
荣誉值:1
信誉值:0
注册日期:2009-10-11 02:23
你的思维误区是认为地址大的单元应该在上面,如我们惯性认为100在10的上面一样:
栈的排列是下部的地址大,上部地址小,1000:FFFE为底部字节单元,就是栈存放第一个字单元的地址.栈中的都是字单元(16bit),分两个字节单元存放,所以栈顶都是0 2 4 6 8 a C E等,多思考下,如何改变我门的惯性思考就好了!继续努力,我也在学这一章呢
88161545
[第
3
楼]
[ 回复时间:2009-11-14 11:35 ]
[
引用
]
[
回复
]
[
top
]
荣誉值:0
信誉值:0
注册日期:2009-11-06 15:18
同意二楼
sc.ty.2006
[第
4
楼]
[ 回复时间:2009-11-21 13:53 ]
[
引用
]
[
回复
]
[
top
]
荣誉值:0
信誉值:0
注册日期:2009-11-08 22:42
1。栈的工作原则是:进栈由高到低,出栈由低到高(内存地址)。
2。栈的数据传输是以字单元为单位(16bit)。
3。栈的最大内存地址为FFFF,而一个字单元要用两位内存地址,最高的字单元叫作FFFE字单元。
4。所以栈顶地址为:1000:FFFE
需要登录后才能回帖 -->>
请单击此处登录
Copyright © 2006-2024 ASMEDU.NET All Rights Reserved