. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->寄存器(内存访问)
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  关于前三章自己的问题与疑惑  [待解决] 回复[ 2次 ]   点击[ 232次 ]  
lilinglx
[帖 主]   [ 发表时间:2012-11-18 23:58 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2012-11-14 22:46
拿到老师实体书后现在看到了第三章,恕小弟愚笨,有一些问题迷迷糊糊的,还望给位赐教。
关于代码段和栈机制,我是否可以这样理解,代码段好比前线指挥所,接受命令,发出命令,具体作战实施在栈中进行。还有就是第三章最后一个实验,在执行完两个t后,也就是实际执行了三行代码,说句实话我是属于悟性不高的,因为我确实没理解这是中断,但是看了答案后说既然要保护,将cs和ip的值先进栈,那么在最后一行数据中首先出现了三个字的空白,然后出现了20-00 00 08 01 39 9d 05这些数据,为什么内存地址2000也要进栈?这个时候这个值不是已经存入寄存器了吗?
lilinglx
[第1楼]   [ 回复时间:2012-11-19 00:11 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2012-11-14 22:46
在加一点,在程序执行中,ip的值也发生了变化,这个时候此处内存的值是否发生了变化,答案提出在定义为栈的内存空间内存发生了变化,但是在ip也确实发生了变化,而且根据程序的不同内容也同样不一样,求解!
lilinglx
[第2楼]   [ 回复时间:2012-11-19 00:59 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2012-11-14 22:46
终于想明白了第二个问题,题目问修改的内存单元地址,而这里ip的作用只是让读取的内容不同内存数据并没有发生变化,但是在栈内因为出现了push和pop所以值是实实在在的发生了变化,看书不够细,理解不够透彻,给自己敲个警钟,呵呵!
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved