十进制
假设页面大小为4096k,内存大小为4G,逻辑地址4832(d),请根据下面页表计算物理地址
页号 | 块号 |
---|---|
0 | 2 |
1 | 3 |
2 | 5 |
3 | 7 |
答:计算公式:块号 * 页面大小 + 页偏移量 = 物理地址
页号 = 逻辑地址 / 页面大小 => 4832 / 4096 = 1
页偏移量 = 逻辑地址 % 页面大小 => 4832 % 4096 = 736
根据页表用页号找到相对应的块号
物理地址 = 3 * 4096 + 736 = 13024
十六进制
假设页面大小为1k,内存大小为4G,逻辑地址3B7(H),请根据下面页表计算物理地址
页号 | 块号 |
---|---|
0H | 1CH |
1H | 36H |
2H | A5H |
3H | 22H |
答:
1、先将16进制转化为2进制
0000 0000 0000 0000 0000 0011 1011 0111
2、页面大小为1k,也就是2^10,所以低10位是页偏移量,高22位为页号。所以11 1011 0111为页偏移量,0位页号
3、通过页号找到相对应的块号,1CH => 0001 1100
4、用二进制拼接物理地址(0001 1100 11 1011 0111)
5、将拼接的物理地址高位补0,再转化为16进制
物理地址(0000 0000 0000 0000 0111 0011 1011 0111) = 73B7(H)