. : : 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