Memory size与内存位置的区别及8 bits架构内存取指疑问
内存核心概念与8位架构主存疑问解答
1. Memory size(内存容量)与内存位置的区别
- 内存容量:指内存硬件的总存储能力,是所有内存单元存储容量的总和,单位通常为Byte、KB、MB等。比如8位家用机常见的64KB主存,就代表整段内存最多可以存储65536个字节的数据。
- 内存位置:也叫内存地址,是系统给每个独立内存单元分配的唯一数字编号,作用是让CPU可以精准定位到要读写的目标内存单元,本质是空间定位的标识。
2. 8位架构内存单元读取长度答疑
首先明确结论:CPU从单8位内存单元读取的指令/数据长度就是8 bits(1 Byte),你原本的常识是正确的,256 bits的说法是混淆了地址总线寻址能力和内存单元容量两个概念。
你提到的2^8=256这个数值,对应的是8位宽度地址总线最多可以寻址的内存单元总数,和单个单元的存储容量没有关系:
地址总线的每一根线都可以输出高/低两种电平对应二进制的1/0,8根地址总线总共可以组合出2^8=256种不同的电平信号,每种信号对应一个唯一的内存地址,最多可以定位256个独立的内存单元。
教材标注每个内存单元容量为8 bits是完全正确的,8位架构的设计逻辑就是内存单元容量、CPU数据总线宽度、通用寄存器宽度三者统一为8位,CPU一次读写操作刚好传输8 bits数据,匹配单个内存单元的容量,不存在单单元256 bits的设计。
内容的提问来源于stack exchange,提问作者Sourav Mitra
相关产品推荐
相关产品推荐

