转移< 32位系统上的4字节数据

时间:2011-06-24 02:47:29

标签: memory byte 32-bit transfer low-level

我有兴趣了解CPU如何从总线宽度为32位的机器上的物理内存中读取单个字节和字。在搜索了一段时间之后,我发现了各种来源,说明控制总线字节使能线用于影响对应于数据总线字节的四个独立存储体的存储区激活。

据我所知,只有可被4整除的地址才会被放到地址总线上。但是,是否所有四个字节都被读入数据总线,然后丢弃一些未使用的字节?例如,假设具有32位数据总线的CPU决定读取从位置1开始的字(我知道由于数据对齐,这是不可能的)。阅读这个词的方法是:

  1. 将地址0放在地址总线上。
  2. 将字节0,1,2和3放在数据总线上。
  3. 丢弃字节0和3(清除它们各自的位)
  4. 在数据总线上重新排列字节1和2,使字节1在第3个存储区中,字节2在第4个存储区中
  5. 将数据总线上更改的值发送到控制单元中注册的内存数据。

1 个答案:

答案 0 :(得分:2)