gpt4 book ai didi

assembly - 从给定的物理和有效地址查找段地址

转载 作者:行者123 更新时间:2023-12-02 20:21:44 24 4
gpt4 key购买 nike

如何从给定的数据中找到段地址?

物理地址 = 0x119B,有效地址 = 0x10AB

公式可能是什么?

最佳答案

x86 16位实模式下的有效地址只是20位segment:offset address的偏移部分。您遇到的问题是确定与有效地址 0x10AB 结合产生物理(线性)地址 0x119B 时的段值。

物理地址可以通过段:偏移对使用公式physaddr=(segment<<4)+offset来计算或physaddr=(segment*0x10)+offset 。稍微修改一下公式:

physaddr = (segment*0x10)+offset
physaddr-offset = segment*0x10
(physaddr-offset)/0x10 = segment
segment = (physaddr-offset)/0x10

现在我们知道段的公式是 segment = (physaddr-offset)/0x10我们可以通过计算来找到您问题的答案:

segment = (0x119B-0x10AB)/0x10
segment = 0xF0/0x10
segment = 0xF

我们可以通过将其代入物理地址的原始方程来检查该结果并得到:

physaddr = (0xF*0x10)+0x10AB = 0x119B.

关于assembly - 从给定的物理和有效地址查找段地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56072884/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com