发布网友 发布时间:2024-10-14 11:30
共1个回答
热心网友 时间:2024-11-05 07:41
楼上的你丫太扯了,完全理解不到马上考试的心情啊 。
题主你是不是要考四级啊。待我给你解释下,不清楚了我们共同讨论。
首先计算页内地址的位数。因为页面大小为4096B,所以页内地址共有12位,因为2^12=4096么。也就是说必须要有12位的地址才能表示一个大小为4096B的页的所有位的地址。
接下来计算所列出来的五个十六位进制数0x0E8D、0x3010、0x411B、0x00FB、0x231E,将其转换为二进制分别为0000111010001101、0011000000010000、0100000100011011、0000000011111011、0010001100011110。
下一步计算每一个逻辑地址的页号(也就是表中的逻辑页号)。将每一个二进制地址从右往左数12位即是逻辑地址的页内地址(比如0x0E8D的二进制0000111010001101中111010001101即使页内地址),然后剩下的就是页号了(比如0x0E8D的二进制0000111010001101中0000就是页号,即页号为0)
然后根据页号看下计算出来的页号在不在内存中,如果已经在内存中的话,将逻辑地址转换为物理地址的时候自然是不会发生缺页中断的,如果页号 不在内存中的话,将逻辑地址转换为物理地址的时候就是会缺页中断的。
这样说不知道题主明白了没有,如果没有的话我们继续讨论,如果那位大神有更好的更详细的解答自然是更好了。求教。