8086汇编 CPU内存交互

吃可爱长大的小学妹 提交于 2020-03-10 13:37:19

8086汇编 计算机传输详解

基础了解

一、计算机存储单元

  计算机数据可以被存储在内存与磁盘中,对于计算机来说他们不同的数据有着不同的含义,他们可以被分为指令与数据,而这些存储在计算机的数据都会有着固定的大小,根据计算机的存储单元来决定。

数据量:B、KB、MB、GB、TB...

存储单元:https://www.cnblogs.com/xiangsikai/p/9468131.html

二、计算机内存存储

  计算机对于数据都是采取二进制的方式存储,而对于CPU管理,数据主要以十六进制补码的方式存储在内存中,方便管理及使用。在汇编语言里不同的进制会采用字母表示(例1)。在存储器被划分为若干个存储单元,每个存储单元从0开始顺序编号,内存地址为16进制表示(例2)。

补码:https://www.cnblogs.com/xiangsikai/p/12371424.html

1

  • 1000100111011000B (二进制)
  • 89D8H (十六进制)
  • 104730O(八进制)
  • 35288D(十进制)

例2

 一个存储器有128个存储单元,编号从0~127。

三、计算机中的总线

1、总线说明

在计算机中专门有连接CPU和其他芯片的导线,通常称为总线。 

  • 物理上:一根根导线的集合。
  • 逻辑上划分为: 地址总线、数据总线、控制总线。

 2、地址总线

  • CPU是通过地址总线来指定存储单元的。
  • 地址总线宽度,决定了可寻址的存储单元大小。
  • N根地址总线(宽度为N),对应寻址空间2N。

 3、数据总线

  • CPU与内存或其它器件之间的数据传送是通过数据总线来进行的。
  • 数据总线的宽度决定了CPU和外界的数据传送速度。

例:向内存中写入数据89D8H时的数据传送

 4、控制总线

  • CPU通过控制总线对外部器件进行控制。
  • 控制总线是一些不同控制线的集合
  • 控制总线宽度决定了CPU对外部器件的控制能力。

 5、其他说明

说明:8086类型的CPU地址总线宽度为20,寻址能力相当于2的20次方,数据总线为16,一次性传递数据2B,读取1k数据需要512次。

内存的读写与地址空间

一、CPU对存储器的读写

1、说明

CPU要想进行数据的读写,必须和外部器件进行三类信息的交互:

  • 存储单元的地址:(地址信息)
  • 器件的选择,读或写命令:(控制信息)
  • 读或写的数据:(数据信息)

2、案例

机器码: 101000000000001100000000

16进制:A00300

汇编指令:MOV AL,[3]

说明:

  1. CPU 地址线 获取内存地址号3
  2. CPU 控制线发送读信号
  3. CPU 数据线 将内存08数据读取到 AL寄存器内

二、内存地址空间

1、内存空间

CPU地址总线宽度为N,寻址空间为2NB。

8086CPU的地址总线宽度为20,那么可以寻址1MB个内存单元,其内存地址空间为1MB。

RAM与ROM构成了整个内存空间。

说明:

  1. RAM 随机存储器,可读可写,断电会丢失,动态存储
  2. ROM 只读存储器,系统存储的重要信息

 

 2、将各类存储器看作一个逻辑存储器统一编址

  • 所有的物理存储器被看作一个由若干存储单元组成的逻辑存储器;
  • 每个物理存储器在这个逻辑存储器中占有一个地址段,即一段地址空间;
  • CPU在这段地址空间中读写数据,实际上就是在相对应的物理存储器中读写数据。

 3、内存地址空间的分配方案以8086PC机为例

每段地址空间对应的 内存地址空间段。

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!