簡體   English   中英

從給定的物理和有效地址中查找段地址

[英]Find Segment address from given physical and effective address

如何從給定的數據中找到段地址?

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

公式是什么?

x86 16位實模式下的有效地址只是20位segment:offset address的偏移部分。 您得到的問題是,確定與有效地址0x10AB組合產生的物理(線性)地址0x119B時的段值。

可以使用公式physaddr=(segment<<4)+offsetphysaddr=(segment*0x10)+offsetsegment:offset對計算物理地址。 重新修改公式:

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

現在我們知道segment的公式是segment = (physaddr-offset)/0x10我們可以執行計算來找到您問題的答案:

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

我們可以通過將其插入物理地址的原始公式中來檢查此結果,並獲得:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM