按字读取,按字节读取

现代存储器基本存储单元都是以字节为单位, 这样就设立了按字节来编号地址,如000表明0地址,001表明了1地址……,这样一个个按字节为单位的空间组成了整个大的存储器数据

所谓的按字节都取就是,给第一个地址编号,CPU从存储器相对应的地址编号中读取一个字节的数据。

下面来讲下按字读取,字是一个不定大小的存储量,咱们能够说2个字节为一个字,4个字节,8个字节等为一个字。虽然这样可是针对每一个存储器固然也不会随意乱编一通。咱们知道存储器是由一个个存储芯片构成,而每一个存储器位宽一般是一个字节,那么假如如今生产一款存储器一次性要读取8个字节,那么咱们会将8个1字节位宽的存储芯片并联,  这样原来给一个地址只能读取一个字节的,就变成8个字节了,而这个一次性就能取到的8字节就是表明当前这个存储器的一个字

那若是按字读取,咱们传递的地址又会是多少呢? 我想一想象一下存储器的存储空间是一个 矩阵 ,针对上面这个存储器,每行是8列,读取一行就是8个字节了,咱们只要给定每行的第一列的地址就能够获取整行了,固然这个时候你也许会问为何不会读取第一行第一列呢,

这个时候其实还会有一个信号来控制,暂时不讨论。 第一行的开头是00000,第二行是01000,第三行是10000,第4行是11000,也就是8 的倍数地址。其实咱们能够看出,这样一个地址,后面的3位其实没什么多大做用了,不用来参与寻找地址了。

也就是实际上若是按字读取数据的时候,地址是由从由往左第4位开始 及以上高位的地址编号决定了读取哪一个字。

相关文章
相关标签/搜索