【讲解】某计算机系统页面大小为4K,进程P1的页面变换表如下图所示,若P1要访问数据的逻辑地址为十六进制1B1AH,那么该逻辑地址经过变换后,其对应的物理地址应为十六进制( )。
某计算机系统页面大小为4K,进程P1的页面变换表如下图所示,若P1要访问数据的逻辑地址为十六进制1B1AH,那么该逻辑地址经过变换后,其对应的物理地址应为十六进制( )。
本题考查页式存储中的逻辑地址转物理地址。由于页面大小为4K,所以页内地址长度为12个二进制位,对应逻辑地址中的:B1A,所以页号为1,通过查询页表可知对应物理块号为6,所以物理地址为6B1AH。
| 页号 | 物理块号 |
|---|---|
| 0 | 1 |
| 1 | 6 |
| 2 | 3 |
| 3 | 8 |
给定页面大小为4K,意味着页面的偏移位数为12位($2^{12}$=4096 )。
步骤1:解析逻辑地址
逻辑地址为十六进制的 1B1AH,即二进制表示为:
0001 1011 0001 1010
将十六进制的
1B1A转换为二进制的步骤如下:
每个十六进制位转换为4位二进制:
1(十六进制) =0001(二进制)B(十六进制) =1011(二进制)1(十六进制) =0001(二进制)A(十六进制) =1010(二进制)组合这些二进制数:
将每个转换的结果按顺序组合:
1B1A(十六进制) = 0001 1011 0001 1010(二进制)所以,
1B1A十六进制转换为二进制是0001 1011 0001 1010。你提到的
1B1AH中的H实际上不是十六进制的有效字符。十六进制(Hexadecimal)只使用数字0-9和字母A-F表示数字,所以H不属于十六进制的字符范围。通常在书写时,H是用来表示"Hex"(十六进制)的标记符号,而不是地址本身的一部分。因此,
1B1AH中的H只是提示我们1B1A是一个十六进制数,实际进行转换时,只需要考虑1B1A。
拆解为页面号和页内偏移量:
-
页内偏移量:逻辑地址的低12位,即
1011 0001 1010,对应的十六进制为B1A。-
0001 1011 0001 1010
^^^^^^^^^^^^
页内偏移量将其转换为十六进制:
1011 0001 1010(二进制)= B1A(十六进制)
-
-
页面号:高位部分
1B1A中的高4位,即0001,对应的页面号是1。-
0001 1011 0001 1010
^^^^将其转换为十六进制:
0001 (二进制)= 1(十六进制)
-
步骤2:根据页号查找物理块号
页面变换表中,页号 1 对应的物理块号是 6。
| 页号 | 物理块号 |
|---|---|
| 0 | 1 |
1 |
6 |
| 2 | 3 |
| 3 | 8 |
步骤3:计算物理地址
物理地址由物理块号和页内偏移量组合而成:
- 物理块号:
6(十六进制)。 - 页内偏移量:
B1A。
将物理块号和页内偏移量组合起来,物理地址就是:6B1A(十六进制)

浙公网安备 33010602011771号