某計算機系統頁面大小爲4K,進程的頁面變換表以下所示。若進程的邏輯地址爲2D16H。該地址通過變換後,其物理地址應是()編程
第一步,先將系統頁面大小按字節單位byte化成二進制,那麼4*1024=4096blog
例子:4K,4096/16=256,餘數爲0 記錄一個0進程
256/16=16,餘數爲0 記錄一個0內存
16/16=1, 餘數爲0 再記錄一個0 最後結果爲1.class
那麼從最後的結果記錄十六進制得出結果:1000!而後化成二進制,0001 0000 0000 0000 一共有12個0分頁
這裏的4K轉成二進制的12個0,就表明了邏輯地址的後12位,是頁內偏移量。 二進制
第二步:把邏輯地址 2D16H 轉成二進制以下:方法
0010 1101 0001 0110 這裏的後12位取出來!im
前4位二進制化成的十進制對應頁號 0010 對應頁號2,物理塊號4!化成二進制是:0100d3
第三步:把上面物理塊號二進制做爲物理地址的開頭二進制!把邏輯地址的後12位取出來,做爲物理地址的後12位!組合以下:
0100 1101 0001 0110 化成16進制的物理地址是:4D16H
—————————————————————————————————————————————————————————————————
某虛擬存儲器的用戶編程空間共32個頁面,每頁爲1KB,內存爲16KB。假定某時一用戶頁表中已調入內存的頁面的頁號和物理塊號的對照表以下:
則邏輯地址 0A5C(H) 所對應的物理地址是什麼?
分析:這道題有多種方法計算結果,這裏仍是沿用上面的方法來計算!須要留意的是每一個頁面的大小,以及邏輯地址
頁面大小1K便是1024的二進制表示爲: 0100 0000 0000 這裏一共有10個0!取邏輯地址的後10位做爲物理地址的實際地址
邏輯地址的二進制爲: 0000 1010 0101 1100 後10位是: 10 0101 1100
邏輯地址的剩餘位是: 000010 前面多餘的2位0能夠省略,化成十進制爲2,頁號2對應物理塊號 11
物理地址塊號11直接化成二進制是: 1011
將塊號的二進制以及邏輯地址的後10位拼在一塊兒是: 1011 10 0101 1100 中間不夠4位,前面的向後移,前面不夠4位,直接加0!!那麼,真正的邏輯地址二進制是: 0010 1110 0101 1100 化成十六進制是:2E5CH
總結一下里面經歷過的進制轉換:
1:頁面大小K化成字節便是乘以1024,再化成二進制。看裏面的0的個數,這裏假設爲n個
2:邏輯地址的後n位置取出來做爲物理地址的後n位的真實地址,邏輯地址的剩餘位化成 十進制 對應頁號表
3:頁號表對應的物理塊號是 十進制 ,化成二進制做爲物理地址的開頭
4:將整個物理地址拼好,將二進制換算成十六進制
5:特別注意,若是剩餘N位的十進制超出表給出的頁號表,則爲超出範圍。要麼是超出範圍,要麼是你算錯了!
6:有的計算題給的頁面單位爲:M!!,這裏的單位是 K !!請仔細注意換算後有多少個0
7:計算地址必須仔細看參數!最重要的參數是:每頁面的大小單位K 並且必需要化成字節(byte)才能換算!便是要乘以1024
—————————————————————————————————————————————————————————————————
分頁式存儲管理系統中,主存容量爲1M
假定某採用分頁式虛擬存儲系統中,主存儲容量爲1M,被分爲256份,某做業的地址空間佔4頁,頁號爲0,1,2,3,被分配要主存的第2,4,1,5塊中,回答
(1)主存地址應該用是____位來表示
(2)做業每一頁的長度爲_____,邏輯地址中的頁內地址(單元號)佔用____位
分析:主容量爲1M!並且被分紅256份!那麼先把M化成k吧!
1*1024=1024K 1024K被分紅256份,那麼每一份的大小爲:1024除以256=4K 問題(2)中的每頁長度爲4K,而後4K換算成二進制便是212次方!12個0!!這裏的頁內地址是術語,意思便是對應物理地址的真實二進制地址!便是後面的12位。問題(2)中的答案爲佔用了12位
1024K*1024=1048576Byte 這個時候再換算成二進制!便是220次方,有20個0!問題(1)中的答案爲 20