[求助]初学汇编 请教关于OFFSET指令的问题
我学习的是intel的汇编
例:.data
aa byte ?
.code
mov EAX,OFFSET aa
OFFSET 指令返回的是数据标号的偏移地址,那么EAX 得到的到底是物理地址还是一个相对数据段的偏移地址?如果是偏移地址,后面编译的时候怎么知道EAX中的地址是数据段的偏移地址?
请指教
我学习的是intel的汇编
例:.data
aa byte ?
.code
mov EAX,OFFSET aa
OFFSET 指令返回的是数据标号的偏移地址,那么EAX 得到的到底是物理地址还是一个相对数据段的偏移地址?如果是偏移地址,后面编译的时候怎么知道EAX中的地址是数据段的偏移地址?
请指教
谢谢楼上的回答,但经过计算以后aa所代表的地址应该是物理地址,那么在用aa所处的地址数值替换了 OFFSET aa以后,EAX是如何得到偏移地址的值呢?还是在第一遍扫描的时候就先把偏移地址移交给EAX?
好 谢谢
我想请教各位:mov EAX,OFFSET aa 得到的是偏移地址所指向单元中的内容吧!而不是偏移地址!!!
如果是用下面的指令:LEA EAX,aa 就是得到偏移地址!!!
第二个是对的,第一个是错的