首頁  >  文章  >  電腦教學  >  為什麼8086CPU的位址線有20根而最大可尋址的儲存空間只有1MB?

為什麼8086CPU的位址線有20根而最大可尋址的儲存空間只有1MB?

WBOY
WBOY轉載
2024-01-19 20:12:231141瀏覽

為什麼8086CPU的位址線有20根而最大可尋址的儲存空間只有1MB?

8086CPU的位址線是20根最大可尋址1MB的儲存空間為何其物

答案:8086 CPU的尋址範圍為1MB。這是因為8086 CPU的位址線有20條,2^20等於1024KB,即1MB。然而,在8086系統中,指令只提供了16位元的位址,與定址相關的暫存器也只有16位元長。因此,尋址範圍僅有64KB。為了能夠尋址1MB的記憶體空間,8086 CPU將記憶體劃分為四個邏輯段。當CPU存取記憶體時,段暫存器的內容(段基址)會自動左移4位元(以二進位表示),然後與段內的16位元位址偏移量相加,從而形成20位元的實體位址。

在分段結構的記憶體中,每個邏輯位址由16位元的段基址和偏移位址組成。

實體位址:記憶體的絕對位址,從00000H~FFFFFH,是CPU存取記憶體的實際尋址位址(也稱為絕對位址)

16位元的段基址左移4位元(相當於在段基址最低位後添4個「0」),與偏移位址相加取得實體位址。

物理位址=段基址*16 偏移位址

?

在分段結構的記憶體中,每個邏輯位址由16位元的段基址和偏移位址組成。

實體位址:記憶體的絕對位址,從00000H~FFFFFH,是CPU存取記憶體的實際尋址位址(也稱為絕對位址)

16位元的段基址左移4位元(相當於在段基址最低位後添4個「0」),與偏移位址相加取得實體位址。

物理位址=段基址*16 偏移位址

12彙編語言。一 80868088CPU允許的最大儲存空間為其物

(1/2)組合語言。一,8086/8088CPU允許的最大儲存空間為(1MB 65520),其實體位址編號從(00000)到(ffff0 ffff 1=10FFF0)H。二、十進制數-46的十六進位數表示為(0FFD2h或0D2H)

十進位數46的十六進位數表示為2EH

Microsoft Windows XP [版本 5.1.2600]

(C) 版權所有 1985-2001 Microsoft Corp.

C:\Documents and Settings\Administrator>debug

-a

0AFE:0100 mov ax,2e

0AFE:0103 xor bx,bx

0AFE:0105 sub bx,ax

0AFE:0107

-t

AX=002E BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000

DS=0AFE ES=0AFE SS=0AFE CS=0AFE IP=0103 NV UP EI PL NZ NA PO NC

0AFE:0103 31DB XOR BX,BX

-t

AX=002E BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000

DS=0AFE ES=0AFE SS=0AFE CS=0AFE IP=0105 NV UP EI PL ZR NA PE NC

0AFE:0105 29C3 SUB BX,AX

-t

AX=002E BX=FFD2 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000

DS=0AFE ES=0AFE SS=0AFE CS=0AFE IP=0107 NV UP EI NG NZ AC PE CY

0AFE:0107 0029 ADD [BX DI],CH DS:FFD2=00

-

在8086系統中有幾個可尋址空間?各有多大

暫存器是16位元的,例如AX,BX,SI,DI都是16位元的,它們能表示的位址碼所以只有16位元的。 2的16次方等於64K,這是我們身為程式編寫者能透過暫存器直接存取的記憶體空間。而8086/8088CPU提供的位址匯流排有20位,2的20次方等於1M,這是CPU它自己能存取的最大記憶體空間。

這就有個矛盾了:CPU能存取1M內存,而寄存器卻只能表示64K內存大小。所以就引入段地址和偏移地址的概念。把這1M 的記憶體空間分成64K大小的一段段,指定哪一段,然後再在這個段的開始加上“偏移位址”,這不就可以存取1M記憶體的任意空間了?

段位址怎麼得到的問題:

例如在彙編資料段某處宣告了某個字元變數 STR

MOV DX,SEG STR

#透過SEG 語句則可把STR所在段位址取出來,送給DX.

###一上內容希望對你有幫助! ###

以上是為什麼8086CPU的位址線有20根而最大可尋址的儲存空間只有1MB?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:docexcel.net。如有侵權,請聯絡admin@php.cn刪除