24 在 32-bit 定址的架構下使用分頁式(paging)記憶體管理,若一個分頁的大小為 4096 bytes,則一個十六進位邏輯位址(logical address)0xAAB13CEF 的分頁號碼(page number)為下列何者?
(A) 0xAAB1
(B) 0xAAB13
(C) 0x13CEF
(D) 0x3CEF

答案:登入後查看
統計: A(34), B(93), C(54), D(38), E(0) #3429188

詳解 (共 1 筆)

#6491058

答案:(B) 0xAAB13

  • 已知:

    • 位址為:0xAAB13CEF(32-bit,符合題目)

    • 每頁大小 = 4096 bytes = 2¹² bytes
      → 所以 offset 為 12 位元,其餘高位元為 page number

  • 32-bit 位址的結構:

    [  page number  ][   offset   ]
    [     20 bits   ][   12 bits  ]
  • 將 0xAAB13CEF 轉成二進位:

    • 十六進位每位是4位元

    • 0xAAB13CEF =
      → A = 1010
      → A = 1010
      → B = 1011
      → 1 = 0001
      → 3 = 0011
      → C = 1100
      → E = 1110
      → F = 1111

      合併後二進位:
      1010 1010 1011 0001 0011 1100 1110 1111

  • 將後面 12 位元劃為 offset:

    • offset = 1100 1110 1111 = 0xCEF

    • 剩下前 20 位元就是 page number:
      → 1010 1010 1011 0001 0011
      → 每4位元為1個十六進位數
      → 對應 hex 為:0xAAB13

10
0