偏移地址

偏移地址

偏移地址也稱為偏移量,由於8086/8088CPU內部的ALU只能進行16位的運算,而8086/8088有20條地址線,直接定址能力1MB。因此,8086/8088所使用的20位物理地址,是由相應的段地址加上偏移地址組成的。

基本介紹

  • 中文名:偏移地址
  • 外文名:Offset Address
  • 套用學科:計算機
定義,計算方法,

定義

偏移地址就是計算機里的記憶體分段後,在段內某一地址相對於段首地址(段地址)的偏移量. 如8086存儲系統中 20位的物理地址(就是數據存儲的實際地址)=16位的段基地址*16+16位的偏移量
全稱:偏移地址(Offset Address)或有效地址(EA,Effective Address)

計算方法

物理地址計算方法
8086/8088有20條地址線,它的直接定址能力為1MB。也就是在一個系統中可以有多達1MB的存儲器,地址從00000H—FFFFFH。給定任意一個20位物理地址,就可以從中取出需要的指令和運算元。但是8086/8088CPU只能進行16位運算。與地址有關的暫存器SP、IP、BP、SI、DI也都是16位的,所以對地址的運算也只能是16位的。對於8086/8088來說,無論採用哪種定址方式,尋找運算元的範圍最大是2^16,也就是64K。如何才能形成20位的物理地址呢。系統先將1MB存儲器以64KB為範圍分成若干段。在定址一個具體物理地址時,由一個基本地址再加上由SP或IP等可由CPU處理的16位偏移量來形成20位物理地址。
當系統需要產生一個20位地址的時候,一個段暫存器會自動被選擇。且自動左移4位再與一個16位地址偏移量相加產生所需的20位地址。
例如:數據段DS暫存器的值=0088H
偏移地址=22H
那么生成的20位物理地址等於 00880H+22H=008A2H

相關詞條

熱門詞條

聯絡我們