特曼de学习笔记 -博客 | 技术分享 - 存储器
type: channel
link: https://www.yuofyou.cn/tag/%E5%AD%98%E5%82%A8%E5%99%A8/
items: 汇编(40)基础知识补充/存储器与指令数据/存储单元/对存储器的读写/地址数据控制总线

汇编(40)基础知识补充/存储器与指令数据/存储单元/对存储器的读写/地址数据控制总线
type: item
date: 2020-08-22T14:25:04+08:00
description: *本篇笔记来源于《汇编语言（第4版）》王爽存储器与指令数据指令和数据存放在存储器中，也就是内存中；一串二进制信息，计算机可以把它看作数据，也可以把它看作指令 例如： 1000100111011000 -> 89D8H(数据) -> MOV AX,BX (指令)存储单元存储器被划分成若干个存储单元，每个存储单元从0开始计算机的最小信息单元是bit（比特），也就是一个二进制位 8个bit（比特）=1个byte（字节）1KB=1024B 1MB=1024KB 1GB=1024MB 1TB=1024GBCPU对存储器的读写在一台微机中，不只有存储器这一种器件。CPU在读写数据时还要指明，它要对哪一个器件进行操作，进行哪种操作，是从中读出数据还是向里面写入数据。CPU要进行数据的读写必须和外部器件进行下面3类信息的交互： 存储单元的地址（地址信息） 器件的选择，读或写的命令（控制信息） 读或写的数据（数据信息） CPU是如何把上面三种信息传到存储器芯片中的呢？传输的信息都是电信号，电信号用导线传输。在计算机中专门有连接CPU和其他芯片的导线，通常称为总线。总线从物理上来讲，就是一根根导线的集合，根据传送信息的不同，分为：地址总线、控制总线和数据总线。地址总线CPU是通过地址总线来指定存储器单元的，地址总线上能传达多少个不同的信息，CPU就可以对多少个存储单元进行寻址假设，一个CPU有10根地址总线，一根导线能表达的状态只有两种（高低电平也就是0或者1），10根导线就是10位二进制数据，10位二进制数可以表示2的10次方个数据，最小数为0，最大数为1023根据上面的假设，我们可以得知：一个CPU有N根地址线，就可以说这个CPU的总线宽度为N，这样的CPU最多可以寻找2的N次方个内存单元数据总线CPU与内存或其他器件之间的数据传送是通过数据总线来进行的，数据总线的宽度决定了CPU和外界的数据传送速度。8根数据总线一次可传送一个8位二进制数据（即一个字节）。8088CPU的数据总线宽度为8，8086CPU的数据总线宽度为16控制总线CPU对外部器件的控制是通过控制总线进行的。控制总线是个总称，控制总线是一些不同控制线的集合。有多少根控制总线，就意味着CPU提供了对外部器件的多少种控制。所以，控制总线的宽度决定了CPU对外部器件的控制能力。内存读或写命令是由几根控制线综合发出的，其中有一根称为“读信号输出”的控制线负责由CPU向外传送读信号，CPU向该控制线上输出低电平表示将要读取数据；有一根称为“写信号输出”的控制线则表示负责传送写信号 地址总线的宽度决定了CPU的寻址能力 数据总线的宽度决定了CPU与其他器件进行数据传送时的一次数据传送量 控制总线的宽度决定了CPU对系统中其他器件的控制能力