. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->建议及意见
主题 : :  建议修正概念说明  [待解决] 回复[ 5次 ]   点击[ 703次 ]  
theguiking
[帖 主] [ 发表时间:2009-01-08 21:06 ] 
荣誉值:0
信誉值:1
注册日期:2008-12-16 19:25
书上说:在任何时候,CPU将CS、IP中的内容当作指令的段地址和偏移地址,用他们合成指令的物理地址,到内存中读取指令码。

可是在处理
jmp 寄存器
等跳转指令的时候,这里就不成立了。因为CPU在指令尚未执行的时候就修改CS、IP的值,这样就有可能指向一个不是指令的存放数据的单元。

建议:语句中增加限制,以更加准确的方式表述。
younggay
[第4楼] [ 回复时间:2009-01-12 18:45 ] 
荣誉值:273
信誉值:0
注册日期:2008-01-23 20:23
既然是任何时候,那读入完毕跳转指令后(但还没有开始执行),CS:IP就会指向紧接着这个跳转指令的内存单元,那谁又能保证从这个单元开始的一定长度的数据一定是程序呢?很可能那一段仅仅是数据而已。
=====================
对啊,就是不能保证啊。也没有必要一定保证啊。关键看你的程序是怎么一个逻辑呢。也许从这跳走了,就再也不回来了,所以,谁关心后面的数据到底是干嘛的啊。
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved