逻辑地址转换为物理地址(三种题型)

前言

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!

本篇博客收录于我的github笔记仓库中,持续更新中,欢迎star~

👉https://github.com/mengqiuleo/myNote


方法:

  1. 求出页号
  2. 对照页表
  3. 计算地址

原则:页号变块号,页内地址照抄

注意!!!

下面的三个例题对应了三种不同的出题方式。第一题是十进制,第二题是二进制,第三题中出现了缺页中断和越界中断的情况

在这里插入图片描述


例题一:

在这里插入图片描述

求页号:d = 4865 % 2048 = 2 … 769

​ 所以对应的页号为2号,块内地址为769

对页表:页号2对应的块号是6

算地址:6*2048+769=13057


例题二:

存储器 32个页面,每页 1KB,内存为 64KB,页号和物理块号对应表如图所示,计算逻辑地址 0A5D(H)所对应的物理地址

页号块号
95
24
37

解释:

  1. 首先十六进制转二进制:0A5D(H) = 000 1010 0101 1101
  2. 因为每页1KB,1KB = 2的10次方B,所以页内地址为 10位,即 10 0101 1101,一会儿页内地址直接照抄
  3. 因为存储器32个页面,32 = 2的5次方,所以页号占5位,即00010,转换为十进制为2,即页号为2
  4. 根据对照表,页号为2,块号为4,转换为二进制为0100
  5. 因为内存为 64KB = 2的6次方KB = 2的16次方B,所以地址一共16位,在前面补0
  6. 最终物理地址为 000100 10 0101 1101

补充单位换算:

bit(位)、B(字节)

  • 1TB=1024GB

  • 1GB=1024MB

  • 1MB=1024KB

  • 1KB=1024B

  • 1B=8bit


例题三:

存储器32个页面(每页1KB),主存为16KB,有一用户程序为10页长,将逻辑地址 0AC5(H),1AC5(H),3AC5(H) 转换为物理地址

逻辑页号物理块号
08
17
24
310

解释:

在这里插入图片描述

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐