当前位置: 首页 > news >正文

主存编址是什么

😄作者简介: 小曾同学.com,一个致力于测试开发的博主⛽️,主要职责:测试开发、CI/CD
如果文章知识点有错误的地方,还请大家指正,让我们一起学习,一起进步。
😊 座右铭:不想当开发的测试,不是一个好测试✌️。
如果感觉博主的文章还不错的话,还请点赞、收藏哦!👍

计算机怎么知道去哪里找关键的信息,通过这篇文章您将彻底了解。

文章目录

  • 主存编址概念
    • 主存是什么
  • 编址的对象是什么
    • 编址方式的演变
    • 为什么需要编址
  • 高效访问:随机存取的威力

主存编址概念

邮递员(CPU)需要根据邮件上的地址编号,准确找到对应的邮箱投递或取出信件。这正是主存编址的基本概念:为计算机主存储器(内存)的每一个存储单元分配一个唯一有序的地址编号,以便CPU能够根据地址准确地找到并访问(读/写)其中的数据。

主存是什么

主存是计算机中用于存放当前正在运行的程序和所需数据的硬件,通常是DRAM(动态随机存取存储器)。它在逻辑上被看作一个巨大的“一维线性地址空间”,像一排排连续编号的邮箱或房间,从地址0开始,按顺序延伸到最大地址。

编址的对象是什么

编址方式的演变

计算机内存编址经历了从简单到复杂的发展过程。早期的计算机系统主要采用按字编址的方式,每个“字”(Word,其长度由计算机字长决定,如32位机的字长为4字节)拥有一个独立地址。这种方式简化了硬件设计,但带来了内存利用效率的问题。例如,在32位按字编址的机器上,地址0对应第1-4个字节,地址1对应第5-8个字节,即使程序只需要1字节数据,也必须访问整个4字节单元。

现代计算机系统几乎全部采用按字节编址的方式,每个字节(8位)拥有独立的地址。这种方式极大地提高了内存使用的灵活性,允许程序以最精细的粒度使用内存。地址0x0000存放第1个字节,地址0x0001存放第2个字节,以此类推,形成了连续、均匀的地址空间。

  • 按字节编址(最普遍的方式):每个字节(8位)拥有一个独立的地址。这是现代计算机的绝对主流方式。
    • 例如:地址0x0000存放第1个字节,地址0x0001存放第2个字节,以此类推。
    • 1字节(B)是8个比特位(bit)
  • 按字编址:每个“字”(Word,字的长度由计算机字长决定,如32位机字长是4字节)拥有一个独立地址。这种方式现在很少见。
    • 例如:在32位按字编址的机器上,地址0对应第1-4个字节,地址1对应第5-8个字节。

为什么需要编址

  • 精确寻址:CPU通过地址总线发送一个地址码,内存控制器就能像“GPS坐标”一样,定位到确切的存储单元。
  • 有序管理:操作系统和程序可以系统化地使用内存,知道数据存放在哪里,不会混乱。
  • 高效访问:支持随机访问,访问任何地址所花的时间相同(与顺序访问的磁带不同)。

高效访问:随机存取的威力

随机访问是内存区别于磁带等顺序存储设备的核心特性。在编址系统中,访问任何地址所需的时间基本相同,这使得CPU能够快速跳转到任意内存位置读取数据或指令。这一特性对程序执行效率至关重要,特别是当程序需要频繁访问分散在内存不同位置的数据时。

随机访问的实现依赖于内存的物理结构。DRAM芯片内部组织成行和列的矩阵,通过行地址和列地址共同确定具体存储单元。当CPU发送完整地址时,内存控制器首先激活对应行(行选通),然后选择该行中的特定列(列选通),最终读取或写入目标单元。

需要注意的是

  • 存储单元个数 = 最大地址 - 最小地址 + 1
  • 总容量 = 存储单元个数 * 编址内容
  • 根据存储器所要求的容量和选定的存储芯片的容量,就可以计算出所需要芯片的总数:总片数 = 总容量/每片的容量

牛刀小试

内存按字节编址,利用 8K x 4bit的存储器芯片构成84000H到8FFFF H的内存,共需(12)片

存储单元个数 = 最大地址 - 最小地址 + 1 = 8FFFFH + 1 - 84000H = 90000H-84000H=C000H
(十六进制)= 12 * 16^3

总容量 = 存储单元个数 * 编址内容 = 12 * 16^3 * 8bit

每片的容量 = 8K x 4bit = 8*2^10 * 4bit

总片数 = 总容量/每片的容量 = 12 * 16^3 * 8bit/( 8*2^10 * 4bit) = 12

另外:

CPU能够访问的最大内存范围,由地址总线的宽度决定。

  • 例如,如果地址总线有32根,那么CPU能产生的不同地址有 2³² 个,对应4GB(2³²字节)的地址空间。这是32位系统的内存上限。
  • 64位系统地址总线更宽,地址空间巨大(理论16EB),远超物理内存实际容量。

懒惰受到的惩罚不仅仅是自己的失败,还有别人的成功。
――朱尔・勒 泊桑

http://www.rkmt.cn/news/112672.html

相关文章:

  • Spring Boot应用开发全攻略:从零基础到企业级实战
  • 运维系列数据库系列【仅供参考】:达梦逻辑导入使用总结
  • 当AI面临伦理投诉时,AI应用架构师该怎么办?这5个解决步骤
  • LobeChat抖音短视频标题优化
  • 接口测试之文件上传
  • 互联网大厂Java求职者面试实录:严肃面试官与搞笑谢飞机的三轮问答
  • 麒麟KY10系统 RPM 安装 automake-1.16.2-1.ky10.noarch 完整指南
  • 利用一句话木马夺取目标网站的shell
  • 基于单片机的家用数字电能表
  • Rk3588鲁班猫4点亮led
  • 掌握5个关键点,搞定语音识别测试!
  • Java毕设项目:基于java的餐厅信息管理系统设计(源码+文档,讲解、调试运行,定制等)
  • Dubbo 面试必问:默认序列化框架及你知道的选择!
  • 代码重构艺术:从烂代码到优雅架构的蜕变(附设计模式实战案例)
  • LobeChat就职演讲稿生成器
  • C++静态类的实现技巧
  • win系统禁止打印功能
  • 功能接口查询结果与原始数据差别大?可能是并发的锅
  • 大型语言模型革命:从传统编程到学习型智能,彻底改变世界的力量与挑战!
  • 关于JxBrowser 里 Chrome 自带的 PDF 工具栏,能不能隐藏问题?
  • 基于Java Swing的排序算法可视化器(2)
  • LobeChat + GPU算力 高效私有化部署AI聊天系统
  • Leetcode刷题日记15(141-150)
  • Leetcode刷题日记16(151-160)
  • 2025年度最佳远控软件评选:十佳品牌出炉,国产软件居多!
  • python爬虫学习(搜索)
  • DownKyi终极指南:5步掌握B站视频批量下载技巧
  • 大雪深埋强化课划重点|保号性专题
  • 2、深入探索Bash脚本编程
  • vue基于Springboot框架的个人健康运动健身饮食人体血糖监测系统