汇编语言的基础知识
寄存器
寄存器是中央处理器内的其中组成部分, 是有限存储容量的高速存储部件,它们可以用来暂存指令,数据和地址。在中央处理器的控制部件中,包括的寄存器有指令寄存器和程序计数器。在中央处理器的算术及逻辑部件中,包括的寄存器有累加器。
指令和数据
在内存或磁盘上,指令和数据没有任何区别,都是二进制信息。
1000100111011000既可以表示16进制的数据还可以表示一串汇编程序,人为规定表示指令还是数据。
CPU对存储器的读写
-
在计算机中专门有连接cpu和其他芯片的导线,通常称为总线
-
物理上是一根根导线的集合
-
逻辑上有以下划分:
-
地址总线:
-
cpu是通过地址总线来指定存储单元的,地址总线上能传送多少个不同的信息,cpu就可以对多少个存储单元进行寻址。
-
一个cpu有N根地址总线,则可以说这个cpu的地址总线的宽度为N。
-
这样的cpu最多可以寻找2的N次方个储存单元(地址总线的宽度代表了存储能力)
-
-
数据总线:
-
cpu与内存或其他器件之间的数据传送是通过数据总线来进行的。
-
数据总线的宽度决定了cpu和外界的数据传送数度。
-
-
控制总线:
-
cpu对外部器件的控制是通过控制总线来进行的。在这里控制总线是的总称,控制总线是一些不同控制线的集合。控制总线发送控制信息。
-
有多少根控制总线。就意味着cpu对外部器件的多少种控制(读或写)。
-
控制总线的宽度决定了cpu对外部器件的控制能力。
-
前面所讲的内存读或写命令是由几根控制总线综合发出的:
-
其中有一根名为读信号输出控制负责由cpu向外传送读信号,cpu向该控制线上输出低电平表示将要读取数据。
-
有一根名为写信号输出控制线负责由cpu向外传送写信号。
-
-
-
-
通过总线的划分可以很好的区分指令和数据
-
小结
-
汇编指令是机器指令的助记符,同机器指令一一对应
-
每一种cpu都有自己的汇编指令集
-
cpu可以直接使用的信息在存储器中存放
-
在存储器中指令和数据没有任何区别,都是二进制信息
-
每一个cpu芯片都有许多管脚,这些管脚和总线相连。即这些管脚引出总线。一个cpu的不同方面的性能:
-
地址总线的宽度决定了cpu的寻址能力
-
数据总线的宽度决定了cpu与其他器件进行数据传送时的一次数据传送量
-
控制总线的宽度决定了cpu对系统中其他器件的控制能力
-
在汇编中,我们从功能的角度介绍这三类总线,不对实际的连接情况作讨论。
-
-
内存地址空间概述
什么是内存地址空间呢?
一个cpu的地址线宽度为10。那么可以寻址1024(2^10)个内存单元,这1024个可寻址的内存单元就构成这个cpu的内存地址空间。
主板
-
在每一台pc机中,都有一个主板,主板上有核心器件和一些主要器件。
-
这些器件通过总线(地址总线 数据总线 控制总线)相连
接口卡
- 计算机系统中,所有可用程序控制其互作的设备,必须受到cpu的控制
- cpu对外部设备不能直接控制,如显示器 音箱 打印机等。直接控制这些设备进行互作的是插在扩展插槽上的接口卡
各类存储芯片
-
从读写属性上看分为两类:
-
随机存储器(RAM)
-
只读存储器(ROM)
-
-
从功能和连接上分类:
-
随机存储器(RAM)
-
装有BIOS的ROM:
BIOS:Basic Input/Output System(基本输入输出系统)
BIOS是由主板和各类接口卡(如:显卡 网卡等)厂商提供的软件系统,可以通过它利用该硬件设备进行最基本的输入输出。在主板和某些接口卡上插有存储相应的BIOS的ROM
-
-
接口卡上的RAM
内存地址空间
- 最终运行程序的是cpu,我们用汇编编程的时候,必须要从cpu的角度考虑问题。
- 对cpu来讲,系统中的所有存储器的存储单元都处于一个统一的逻辑存储器中,它的容量受cpu寻址能力的限制。这个逻辑存储器即是我们所说的内存地址空间。