基础知识
1.1 机器语言
机器语言是机器指令的集合
机器指令是一台机器可以正确执行的命令
电子计算机的机器指令是一列二进制数字,计算机将之转换为一列高低电平,以使计算机的电子器件受到驱动,进行运算
特点:所有都用机器语言写很繁杂,全是0101,代码量大而且容易出错
1.2 汇编语言的产生
举例就懂了
操作:寄存器BX的内容送到AX中
机器指令:1000100111011000
汇编指令:mov ax, bx
讲机器指令语义化了,更适合编程人员编程和阅读
计算机只能读懂机器指令,所以汇编指令写完写完需要编译器进行编译,编译成机器码之后计算机才能运行
不同微处理器,硬件设计和内部结构不同,需要用不同的电平脉冲来控制是他工作,所以就有了不同的机器指令集(机器语言)。也就是有不同的汇编指令集。
1.3 汇编语言的组成
汇编语言由三类指令组成
- 汇编指令:机器码的助记符,有对应的机器码
- 伪指令:没有对应的机器码,由编译器执行,计算机并不执行
- 其他符号:如±*/等,由编译器识别,没有对应的机器码
1.4 存储器
内存:与cpu直接进行数据传递
磁盘:cpu不能直接访问磁盘的数据
1.5 指令和数据
指令和数据是应用上的概念,在存储器中都是二进制的信息,区别在于cpu为这些信息赋值了不同的意义,有的是指令,有的是数据。
1.6 存储单元
存储器被划分为若干存储单元,每个存取单元从0开始顺序编号。这些编号就是该存储单元在存储器中的地址。
微型计算机存储器的存储单元可以存储1字节byte,也就是8位bit。
存储器容量的计量单位
1KB=1024B=2^10B
1MB=1024KB
1GB=1024MB
1TB=1024GB
1.7 CPU对存储器的读写
CPU对存储器的读写时与外部器件的交互:
简单说就是在存储器的哪块位置操作,在哪个器件上,读还是写,读/写的内容
- 存储单元的地址(地址信息)
- 器件的选择,读或写的命令(控制信息)
- 读或写的数据(数据信息)
CPU与其他器件交互需要借助总线
总线
总线就是一根根导线的集合,不同器件都有管脚,通过导线连接起来,便于数据传输。
根据传送信息的不同,总线分为三种:地址总线 控制总线 数据总线
地址总线
cpu通过地址总线来指定存储单元
cpu有N根地址线,则可以寻找2^N个存储单元
一个cpu的地址总线宽度指的就是这个cpu有多少根地址线
地址总线的宽度决定了CPU的寻址能力
控制总线
一条控制命令是由几根控制线一起发出的。
控制总线的宽度决定了CPU对系统中其他器件的控制能力
数据总线
一条数据的长度大于数据总线的宽度,就需要将该该数据分多次进行传输
数据总线的宽度决定了CPU与其他器件进行数据传送时的一次数据传送量
1.8 内存地址空间
CPU可以直接访问的所有存储器在逻辑上合成一个空间就是内存地址空间。
每个物理存储器在这个逻辑存储器上占有一个地址段,即一段地址空间。cpu在某一段空间读写数据时候其实就是在对应的某个物理存储器中读写数据。
属于内存地址空间的存储器要满足的要求:
- 都和cpu的总线相连
- CPU对它们进行读写的时候都通过控制线发出内存读写命令
计算机的内存地址空间容量受CPU地址总线宽度的限制。比如8086PC 地址总线宽度20位 那么内存地址空间就是2^20byte 也就是1MB
1.9 主板
每一个pc机中,都有一个主板(PCB),主板上有各种器件(cpu 存储器 外围芯片组 扩展插槽[扩展插槽一般插ram内存条和各类接口卡]),这些器件通过总线相连。
接口卡
计算机的所有外设都必须受到CPU的控制。但是CPU不能直接控制外设。
直接控制外设的是插在扩展插槽上的接口卡,因为扩展插槽通过总线与cpu连接了,所以接口卡也就和cpu相连了,这样CPU就可以通过接口卡控制外设。
各类存储器芯片
从读写属性分类:
-
随机存储器RAM
可读可写,带电存储,断电数据丢失。
-
只读存储器ROM
只能读不能写,断电数据还在。
从功能和连接上分类:
-
随机存储器
-
装有bios的ROM
-
接口卡上的RAM
想提一句显存看了这本书知道的(maybe只有我这个小菜菜刚知道):放在显存里边的内容会显示在显示器上。(之前以为还得有一个存储设备从显存里边拿数据然后显示在显示器上…)
《汇编语言》(第3版)_王爽 百度网盘资源
链接:https://pan.baidu.com/s/1cMZz4MZ4Ro7VqpVKTECAAg
提取码:64c4