You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

操作系统:4KB页面大小下计算十进制地址21235的页号与页偏移量

分页地址转换逻辑说明
  • 分页存储的核心逻辑是把整个地址空间按固定大小的页拆分,任意地址都可以拆分为页号(标识该地址属于第几个页)和页内偏移量(标识该地址在对应页中的位置)两个部分。
  • 本次计算的页大小为4KB,换算为字节数为 4 * 2^10 = 4096 B

你提供的原始计算逻辑刚好把两个参数的计算式写反了,正确的计算规则如下:

  • 页号 = 十进制地址 整除 页大小(仅取整数部分,舍弃小数)
  • 页内偏移量 = 十进制地址 对页大小取余

实际计算验证

  1. 计算页号:21235 / 4096 = 5
    前5页(编号0到4)的总地址覆盖范围是0 ~ (5*4096 -1) = 0~20479,21235大于20479,因此属于第5页,和计算结果一致。
  2. 计算页内偏移量:21235 % 4096 = 755
    等价于运算 21235 - 5*4096 = 21235 -20480 = 755,即该地址是第5页的第755个字节位置,结果正确。

原理说明

  • 整除操作的本质是统计目标地址之前能放下多少个完整的页,得到的整数就是页的编号
  • 取余操作的本质是扣除所有完整页占用的地址长度后,剩下的地址长度就是该地址在当前页里的相对位置,也就是页内偏移量

内容的提问来源于stack exchange,提问作者Cosmos Lee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.14 03:51:03