當前位置:首頁 » 歷物理化 » cpu物理地址

cpu物理地址

發布時間: 2021-08-04 19:27:55

1. 8086CPU給出物理地址的方法

一個寄存器16位,訪問的最大內存太小,只有111111111111111(二進制)=64K(十進制)是吧,怎麼辦?幸虧CPU提供了一種機制:物理內存(實際地址)=段基址*16+偏移地址來增大內存訪問(雖然很少人用匯編出這么大的程序,也要預防萬一),你看CPU是這樣的:段基址*16,段寄存器是16位,乘以16(十六進制)=10000(二進制)=1左偏移4位,這時你看一下,若段基址為64K(十進制)=111111111111111(二進制)乘以16,就是左偏移4位,就等於1111111111111110000(二進制)=1024k(十進制)=1M了。看見了吧,增加這機制很有好處,訪問的地址大了!雖然這很不現實,但是,CPU增加這種特性,對於數據訪問很方便的!

2. CPU中,物理地址和邏輯地址是指什麼

邏輯地址是段地址和偏移地址,將段地址二進制左移四位加上偏移地址,就是這個邏輯地址實際的物理地址,通過這個物理地址就能實際訪問到它。 邏輯地址是為了方便內存段式管理而出現的概念。

3. 內存中的物理地址是CPU分配嗎

內存單元的物理地址是由其所處的地址匯流排上的位置決定的,機器安裝完成後,其物理地址是固定的、不變的,並不是由CPU分配的。
但要操作哪個單元 是由cpu 中的控制器來完成的。

4. 8088CPU中,物理地址和邏輯地址是指什麼

1.邏輯地址:其表達形式為「段地址:段內偏移地址」。 2.物理地址:CPU與存儲器進行數據交換時在地址匯流排上提供的20位地址信息稱為物理地址。 但是你的段地址位數不對。。給你舉個例子 段地址*10H+偏移地址,偏移地址用IP指向,IP是16位的。

5. cpu命中高速緩存用的地址,是物理地址,還是邏輯地址

第一問(怎麼查找高速緩存。)

  1. 用PC中的虛擬地址的offset欄位拆分成index欄位和block offset部分。用index訪問高速緩存,從多個cache set中各命中一個cache line。虛擬地址的vpn部分定址TLB,得到一個物理地址。這兩步是同時執行的。

  2. 把訪問TLB得到的物理地址和cache line的Tag部分比較,判斷hit?miss?最後用block offset部分從cache line內命中一位元組的Data

配張圖感覺比較好理解,【圖獻自《計算機體系結構 量化研究方法》一書】




——————————————————————————————————————————




第二問(應該內存物理地址和高速緩存中地址對應不是嗎?)

我直接說對應的物理內存的數據該放在哪個cache set中,這樣聽起來應該比較舒服。

假設一個數據在物理內存的塊地址是4000(注意區別塊地址和位元組地址),一個cache為8個cache set,4000mod8=0;那麼他在被使用之後應該放在0set中。

6. CPU的物理地址

計算機的cpu裡面都有一張tlb映射表,是一種緩存。
當cpu接收到應用程序傳過來的虛擬地址的時候,根據這張表轉換成物理地址再去訪問。是cpu邊執行邊換轉的。
具體樓主可以搜索一下tlb的相關知識。

7. cpu訪問的是邏輯地址還是物理地址

計算機的cpu裡面都有一張tlb映射表,是一種緩存。 當cpu接收到應用程序傳過來的虛擬地址的時候,根據這張表轉換成物理地址再去訪問。是cpu邊執行邊換轉的。 具體樓主可以搜索一下tlb的相關知識。

8. 知道計算機的cpu地址長度,和內存大小,怎樣計算它的物理地址和邏輯地址

cpu地址線寬度吧! 寬度為N ,所能定址的范圍為 0~2^N-1 ,最多定址2^n.
打個比方,將要過時的32位cpu,它的地址匯流排為32bit,那麼它可以定址范圍為2^32=4G.這個是邏輯地址空間。
cpu ---> 口口口口口口口口口口口口口口口口口口口口口口口口口口 邏輯地址空間
0 4G-1
|基本內存|擴展內存|顯存 | 。。。。。 |。。。|。。

主板設備 內存條 顯卡 其它介面卡設備
物理地址 <-> 邏輯地址
80386以前採用分段管理,以後採用分段+分頁管理。
這里的管理只是說它們之間如何映射的。。
你說的內存大小,只是邏輯地址空間的一部分。

9. 8086/8088 CPU的20位物理地址是怎樣形成的

(1)Intel的8位機8080CPU,數據匯流排(DB)為8位,地址匯流排(AB)為16位.那麼這個16位地址信息也是要通過8位數據匯流排來傳送,也是要在數據通道中的暫存器,以及在CPU中的寄存器和內存中存放的,但由於AB正好是DB的整數倍,故不會產生矛盾。
(2)但當上升到16位機後,Intel8086/8088CPU的設計由於當年IC集成技術和外封裝及引腳技術的限制,不能超過40個引腳.但又感覺到8位機原來的地址定址能力2^16=64KB太少了,但直接增加到16的整數倍即令AB=32位又是達不到的.故而只能把AB暫時增加4條成為20條.則2^20=1MB的定址能力已經增加了16倍.但此舉卻造成了AB的20位和DB的16位之間的矛盾,20位地址信息既無法在DB上傳送,又無法在16位的CPU寄存器和內存單元中存放.於是應運而生就產生了CPU段結構的原理。
"邏輯地址" 在學術文獻中的解釋:
1、這樣該存儲單元的地址就可以用段基值和段內偏移量來表示,段基值確定它所在的段居於整個存儲空間的位置,偏移量確定它在段內的位置,這種地址表示方式稱為邏輯地址,通常表示為邏輯地址:偏移量的形式(計算機網路全書)。
2、所謂邏輯地址是指按數據的邏輯塊號給出的磁碟的位置(l塊=512字l字=64位)而物理地址則是由磁碟的柱面、頭、段等物理位置所確定的地址(邏輯運算)。
感覺這樣的提問沒有意義
建議自己下去查查資料

10. 關於8086CPU計算物理地址問題

因為x86處理器地址匯流排是20位,最大管理1M內存,對應物理地址是00000H-fffffH

而內部數據匯流排、寄存器都是16位的,能表示的范圍為0000H-ffffH

如何用16位寄存器表示20位?想到這樣一種方式:
把兩個16位寄存器相加得到20位,於是便有了

物理地址=段地址*16+偏移地址
相當於在16位地址後面加4個0,形成20位地址

具體過程如下:
段地址和偏移地址通過內部匯流排傳入到地址加法器的部件;
地址加法器將兩個16位地址合並為一個20位的物理地址;
0010 1001 1000 1000 0000 後面加4個0
0000 1000 0000 0000 0000 前面加4個0
-------------------------
0011 0001 1000 1000 0000
3 1 8 8 0

熱點內容
男孩性教育書籍 發布:2025-07-04 06:45:07 瀏覽:727
九年級上冊歷史復習 發布:2025-07-04 04:12:15 瀏覽:952
面試體育教師 發布:2025-07-04 03:55:12 瀏覽:120
教師師德先進材料 發布:2025-07-04 03:05:55 瀏覽:487
用什麼詞來形容班主任 發布:2025-07-04 00:41:46 瀏覽:849
吉婷老師 發布:2025-07-04 00:40:42 瀏覽:215
哪個銀行比較好 發布:2025-07-03 22:42:49 瀏覽:356
老師的苦是 發布:2025-07-03 22:41:31 瀏覽:714
四年級上冊語文期末卷 發布:2025-07-03 22:04:20 瀏覽:476
一個是班主任的體育老師 發布:2025-07-03 20:09:33 瀏覽:427