首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

请问32位保护模式下的地址有关问题

2012-03-13 
请教32位保护模式下的地址问题我们都知道在开启了分段与分页的保护机制后,每个地址是由段选择符与32位偏移

请教32位保护模式下的地址问题
我们都知道在开启了分段与分页的保护机制后,每个地址是由段选择符与32位偏移量组成

那么如下形式的一条指令究竟是怎么赋值的,比如有个地址$addr
movl $addr,%eax

这里赋给eax的是??相对于当前ds选择符所指段基地址的偏移量吗?还是说其他?

[解决办法]
将符号addr的偏移地址放入eax中。

比如说你的addr定义在data段中:

.data
addr DWORD 0

我这个是intel汇编语法,at&t的类似。

假设addr在DS段的offset是0x20000,则将0x20000放入eax.
注意ds值并没有放入,这在实际寻址时再计算。

only 偏移地址

热点排行