8086 总线和内存

请注意,本文编写于 393 天前,最后修改于 191 天前,其中某些信息可能已经过时。

总线

总线就是一根根导线的集合,每一个cpu都有许多与管脚相连的总线,cpu通过总线与外部器件交互。总线分为地址总线,数据总线和控制总线。

  • 地址总线的宽度绝对cpu寻址能力,8086的地址总线宽度为20
  • 数据总线宽度绝对cpu单次数据传递两。8086的总线宽度为16
  • 控制总线的宽度决定了cpu对其他部件的控制能力

cpu读写数据的过程:
地址总线将地址发送给内存,控制总线发出读写命令,内存通过数据总线将从内存地址对应的内存空间中取出的值发送给cpu(读),或者将cpu通过数据线将想要写入的数据发送到相应的内存空间中(写)。

内存

内存地址空间大小受cpu地址总线宽度的限制。8086的地址总线的宽度为20,所以可以传送2^20次方个不同的地址信息。即可以定位2^20内存单元,所以8086的内存地址空间大小为1M。

8086内存地址空间分配情况

王爽《汇编语言(第三版中内存空间分配示意图)》
王爽《汇编语言(第三版中内存空间分配示意图)》

从地址0-9FFFF的内存单元中读取数据,实际上就是在读取主随机存储器中的数据,向A0000-BFFFF的内存单元中写数据,就是向显存中写入数据,显存中写入的数据水杯显卡显示在显示器上。向C0000-FFFFF的内存单元中写入数据的操作是无效的,因为这块空间是只读的。

8086汇编的相关笔记来自 小码哥 MJ iOS底层视频 以及 王爽《汇编语言(第三版)》

Comments

添加新评论