㈠ 若8086/8088中,存儲單元的邏輯地址由哪幾部分組成怎樣轉換為物理地址
8086中一個位元組是8位,一個字是16位即10h,如果字串都在一個段的話,第16個字邏輯地址是:2000h:1150h,物理地址=段基址×16+偏移地址=21150h
㈡ 邏輯地址如何轉換成物理地址的
首先我們知道,邏輯地址=段地址:偏移地址
然後進行運算:段地址×16+偏移地址=物理地址(可以理解為段地址末尾補一個零)
舉例:邏輯地址是1000H:1000H
那麼物理地址為1000H×16+1000H=11000H
拓展知識:
邏輯地址和物理地址的區別是:
邏輯地址(LogicalAddress)是指由程序產生的與段相關的偏移地址部分。例如,你在進行C語言指針編程中,可以讀取指針變數本身值(&操作),實際上這個值就是邏輯地址,它是相對於你當前進程數據段的地址,不和絕對物理地址相干。只有在Intel實模式下,邏輯地址才和物理地址相等(因為實模式沒有分段或分頁機制,Cpu不進行自動地址轉換);邏輯也就是在Intel保護模式下程序執行代碼段限長內的偏移地址(假定代碼段、數據段如果完全一樣)。應用程序員僅需與邏輯地址打交道,而分段和分頁機制對您來說是完全透明的,僅由系統編程人員涉及。應用程序員雖然自己可以直接操作內存,那也只能在操作系統給你分配的內存段操作。
物理地址(PhysicalAddress)是指出現在CPU外部地址匯流排上的定址物理內存的地址信號,是地址變換的最終結果地址。如果啟用了分頁機制,那麼線性地址會使用頁目錄和頁表中的項變換成物理地址。如果沒有啟用分頁機制,那麼線性地址就直接成為物理地址了。
㈢ 邏輯地址轉換成物理地址的計算題
頁表可以實現從頁號到物理塊號的地址映射。通過邏輯地址的頁號來尋找頁表,從而獲得物理塊號;在將頁內地址直接送入物理地址寄存器的塊內地址欄位中。將塊號和塊內地址拼接成實際訪問地址,即可得到物理地址。
物理地址的計算公式為:物理地址=塊的大小(即頁的大小L)* 塊號f+頁內地址d
代入本題解答:
頁號=int(2500/1024)=2;頁內位移=2500mod1024=452;假設頁號2對應塊號1,則物理地址為:
物理地址=1024*1+452=1476
(3)完成邏輯地址到物理地址轉換的部件是什麼擴展閱讀:
邏輯地址(LogicalAddress)即通過電腦程序產生的與段相關的偏移地址部分,也叫做相對地址;
物理地址,即計算機中每一個位元組單元的唯一存儲地址,也叫做實際地址或絕對地址。
利用所給的邏輯地址首先找到在頁表中的那一頁,即頁號,再者利用所給的邏輯地址計算出在頁表的頁偏移量,從而利用頁表所對應的物理塊計算出塊號,再利用塊號的基礎上計算出所給的偏移量。(一般只針對於動態重定位的變化使用)
㈣ 操作系統中邏輯地址轉物理地址是什麼
1、確定虛擬地址(物理地址)的有效位。
2、再次確定邏輯地址頁面位數你應該知道:邏輯地址=頁號+頁面。
3、由物理地址=頁框號×頁塊大小(頁塊大小是等於頁面大小的)+頁內位移(即頁面邏輯地址)
4、根據上面物理地址=頁框號×1024B+1110000000。
5、若在一分頁存儲管理系統中,某作業的頁表如下所示。已知頁面大小為1024位元組,試將邏輯地址1011,2148,4000,5012轉化為相應的物理地址。
分析頁式存儲管理的地址結構是一維的,即邏輯地址(或物理地址)只用一個數值即可表示。若給定邏輯地址A,頁面的大小為L,則頁號p和頁內地址d可按照下式求得:
p=int[A/L]d=AmodL
其中,int是取整函數(取數值的整數部分),mod是取余函數(取數值的余數部分)。
㈤ 把邏輯地址轉變為內存的物理地址的過程稱為什麼
把邏輯地址轉變為內存的物理地址的過程稱為重定位
重定位就是把程序的邏輯地址空間變換成內存中的實際物理地址空間的過程,也就是說在裝入時對目標程序中指令和數據的修改過程。他是實現多道程序在內存中同時運行的基礎。重定位有兩種,分別是動態重定位與靜態重定位。
㈥ 地址變換機構是硬體嗎
地址變換機構是硬體。地址變換機構,可以理解為將邏輯地址轉變為物理地址的一組硬體機構,這些硬體需要做些什麼事情,才能將邏輯地址轉換為物理地址。
基本地址變換機構,可以藉助進程的頁表將邏輯地址轉換為物理地址。通常情況下,會在系統中設置一個頁表寄存器(PTR),存放頁表在內存的起始地址F和頁表長度M。
請求分頁系統中的地址變換機構是在分頁系統地址變換機構的基礎上,為實現虛擬存儲器,增加某些功能形成的。在進行地址變換時,首先檢索快表,試圖從中找出所要訪問的頁。若找到,便修改頁表項中的訪問位。
對於寫指令,還需要把修改位置成1,表示該頁在調入內存之後被修改。然後利用頁表項中給出的物理塊號和頁內地址形成物理地址。地址變換過程到此結束。
如果快表中沒有找到該頁的頁號,則應到內存中查找頁表,再從頁表項中的狀態位P來了解該頁是否已調入內存。若該頁已調入內存,把該頁的頁表項寫入快表。
㈦ 80386微處理器邏輯地址到物理地址的轉換過程
邏輯地址(logical address)
包含在機器語言指令中用來指定一個操作數或一條指令的地址。這種定址方式在80x86著名的分段結構
中表現得尤為具體,它促使MSDOS
或windows程序員把程序分成若干段。每一個邏輯地址都由一個段
(segment)和偏移量(offset 或 displacement)組成,偏移量指明了從段開始的地方到實際地址之間的距
離。
線性地址(linear address)(也稱虛擬地址 virtual address)
是一個32位無符號整數,可以用來表示高達4GB的地址,也就是,高達4 294 967 296個存儲器單元。
線性地址通常用16進制數字表示,值的范圍從0x00000000 到 0xffffffff。
物理地址(physical address)
用於內存晶元級內存單元定址。它們與從微處理器的地址引腳發送到內存匯流排上的電信號相對應。物理
地址由32位或36位無符號整數表示。
內存控制單元(MMU)通過一種稱為分段單元(segmentation unit)的硬體電路把一個邏輯地址轉換成線性
地址;接著,第二個稱為分頁單元(paging unit)的硬體電路把線性地址轉換成一個物理地址
㈧ 在分頁系統中頁面大小由誰決定頁表的作用是什麼如何將邏輯地址轉換成物理地址
答:
在分頁系統中頁面大小由硬體決定。頁表的作用是實現從頁號到物理塊號的地址映射。邏輯地址轉換成物理地址的過程是:用頁號p去檢索頁表,從頁表中得到該頁的物理塊號,把它裝人物理地址寄存器中。同時,將頁內地址d直接送人物理地址寄存器的塊內地址欄位中。這樣,物理地址寄存器中的內容就是由二者拼接成的實際訪問內存的地址,從而完成了從邏輯地址到物理地址的轉換。
㈨ 如果程序中的邏輯地址為3470,怎麼轉換成物理 地址
頁表的作用是實現從頁號到物理塊號的地址映射。以邏輯地址的頁號檢索頁表,得到該頁的物理塊號;同時將頁內地址d直接送入物理地址寄存器的塊內地址欄位中。這樣物理塊號和塊內地址拼接成了實際訪問內存的地址,從而完成了從邏輯地址到物理地址的轉換。所以物理地址的計算公式為:物理地址=塊的大小(即頁的大小L)′塊號f+頁內地址d解本題中,為了描述方便,設頁號為p,頁內位移為d,則:p=int(2500/1024)=2d=2500mod1024=452假設頁號2對應塊號1那麼物理地址=1024*1+452=1476
㈩ 什麼是邏輯地址什麼是物理地址如何將邏輯地址轉換為物理地址
邏輯地址你可以理解為物理地址的別名,邏輯地址到物理地址的轉換叫做映射,這個是提前寫好的映射關系:什麼偏移量啊,反碼,補碼什麼的。