8086汇编-基础知识(1)
引言
汇编语言是直接在硬件之上互作的编程语言
学会用汇编的思维去使用C语言
比汇编更底层的 –> 机器语言
【进制转化】【可以再去学一下】
【王爽的汇编语言】
寄存器
1 | 简单讲是CPU中可以存储数据的器件,一个CPU中有多个寄存 |
1 | 以后还会讲咯 |
程序–>汇编指令–>编译器–>机器码
汇编语言和机器指令是一一调用的
汇编语言的组成
1.汇编语言有3类组成:
1 | 1.汇编指令【机器码的助记符】 |
2.汇编语言的核心是汇编指令,它决定了汇编语言的特性
【编码的奥秘】这本书推荐看看。
储存器
1.CPU是计算机的核心部件,它控制整个计算机的运作并进行运算,要想让一个CPU互作,就必须向它提供指令和数据
2.指令和数据在存储器中存放,也就是平时说的内存
3.在一台PC中的内存的作用仅次于CPU
4.离开了内存,性能在好的CPU也无法互作
5.磁盘不同于内存,磁盘上的数据或程序如果不读到内存中,就无法被cpu使用
指令和数据
1.指令和数据是应用上的概念
2.在内存或磁盘上,指令和数据没有任何区别,都是二进制信息
3.二进制信息:–>【进制转化】
1 | 1000100111011000 ==>转成Hex |
存储单元
1.储存区被划分为若干个存储单元,每个存储单元从0开始顺序编号
1 | 比如:一个储存区有128个存储单元,那么编号从0~127 |
2.对于大容量的储存区一般还用
1 | KB = 1024B |
3.磁盘的容量单位同内存的一样,实际上以上单位是微机中常用的计量单位
CPU对储存区的读写
1.CPU要想进行数据的读写,必须和外部器件(标准的说法是芯片)进行三类信息的交互:
1 | 1.存储单元的地址(地址信息) |
CPU对储存区的读写
1.那么CPU是通过什么将地址,数据和控制信息传递到存储芯片的呢?
1 | 电子计算能处理,传递的信息都是电信号,电信号当然要用导线传送 |
2.在计算机中专门有连接CPU和其他芯片的导线【称为总线】
1 | 在物理上:一根根导线的集合; |
3.CPU是如何进行读和写的?
1 | 首先通过地址总线,找到相对应的地址。 |
对于8086CPU,下面的机器码能完成从三号单元读数据:
1 | 机器码:101000000000001100000000 |
地址总线
1.CPU是通过地址总线来指定存储单元的
2.地址总线上能传送多少个不同的信息,CPU就可以堆叠多少个存储单元进行寻址
3.一个CPU有N根地址总线,则可以说整个CPU的地址总线的宽度为N
4.这样的CPU最多可以寻找2的N次方个内存单元
5.地址是从下面往上面读
这样读出来的是1011【前面的补上0】
数据总线
1.CPU与内存或其他器件之前的数据传送是通过数据总线来进行的
2.数据总线的宽度决定了CPU和外界数据传送速度
1 | 宽度越高,一次传入的数据就越多。 |
控制总线
1.CPU对外部器件的控制是通过控制总线来进行的。在这里控制总线是一个总称,控制总线是一些不同的控制线的集合
2.有多少根控制总线,就意味着CPU提供了对外部器件的多少种控制
3.所以,控制总线的宽度决定 看CPU对外部器件的控制能力
1 | 控制总线上发送的控制信息 |
4.前面所讲的内存读或写的命令是由几根控制线综合发出的
1 | 1.其中由一根名为读信号输出控制线负责由CPU向外传送读信号,CPU向该控制线上输出低电平表示将要读取数据 |
小结
1.汇编指令是机器指令的助记符,同机器指令一一对应
2.每种CPU都有自己的汇编指令集
3.CPU可以直接使用的信息在存储器中存放
4.在存储器中指令和数据没有任何区别都是二进制信息
5.存储单元从零开始顺序编号
6.一个存储单元可以存储8个bit,即8位二进制数。
7.每一个CPU芯片都有许多管脚,这些管脚和总线相连。也可以说,这些管脚引出总线。一个CPU可以引出三种总线的宽度标志了这个CPU不同方面的性能
1 | 1.地址总线的宽度决定了CPU的寻址能力; |
8.在汇编课程中,我们从功能的角度介绍了这三类中线,对实际的连接情况不做讨论。
内存地址空间(概述)
1.上面是内存地址空间?
1 | 一个CPU的地址线宽度为10,那么可以寻址1024个内存单元,这1024可寻到的内存单元就构成了这个CPU的内存地址空间 |
2.主板
1 | 1.在每一台PC机中,都有一个主板,主板上有核心器件和一些主要器件 |
3.接口卡
1 | 1.计算机系统中,所有可用程序控制其互作的设备,必修收到CPU的控制 |
4.各类储存区芯片
1 | 1.从读写属性上看分为2类: |
内存地址空间
1.上述的拿下存储器在物理上是独立的器件
2.但是它们在一下俩点上是相同的:
1 | 1.都和CPU的总线相连 |
3.将各类存储器看作一个逻辑存储器:
1 | 1.所有的物理存储器被看作一个由若干存储单元组成的逻辑存储器; |
内存地址空间
1 | 1.最终运行的程序都是CPU,我们用汇编编程的时候,必须要从CPU角度考虑问题 |