关于9.6课 的问题
本帖最后由 无比菜鸟 于 2011-7-20 10:54 编辑关于jmp dword ptr 的问题
我有个问题没搞懂,请大家帮我看看。
书中有例子如下
mov ax, 0123h
mov ds:, ax
mov word ptr ds:, 0
jmp dword ptr ds:
书中如是说:执行后, (CS)=0,(IP)=0123H
看了半天,悲催地没理解,我是这么看上段代码的
1、比如 我假设在代码执行前ds:0 f里的数据如下
ds:0 f 0123456789ABCDEF
该段内存中的数据1234567891234567
2、mov ax, 0123h
mov ds:, ax
这两句代码执行后,相应数据段中的数据变为
ds:0 f 0123456789ABCDEF
该段内存中的数据 2301567891234567
3、mov word ptr ds:, 0
这两句代码执行后,相应数据段中的数据变为
ds:0 f 0123456789ABCDEF
该段内存中的数据2300007891234567
4、那么执行最后一句代码
jmp dword ptr ds:
结果为(CS)=7800H, (IP)=0023H
请问 我是什么概念没搞清楚~!? 我debug了这段代码
书中没有错误。
贴一发,我就知道了哪错了,还是放这吧。。。晕
数据段中存放形式是:
ds:0 f 0 1 2 3 .........
23010000.........
页:
[1]