《汇编语言》笔记——第一章 基础知识
机器语言
在电子计算机中的一系列操作步骤被称为机器指令。每个这样的指令通常由一组特定的二进制位表示,并通过转换这些位的形式来传递信息。
每一种微处理器都有自己的机器指令集,也就是机器语言。
汇编语言
作为汇编语言的核心组成部分,汇编指令在程序设计中占据重要地位。在表示形式上存在显著差异的是汇编指令与机器指令之间的区别。在程序设计中采用汇编指令的方式是为了方便记忆和使用。
例如:mov ax,bx
Q:汇编程序通常由哪些工具转换为计算机可以直接执行的机器指令?
A:编写汇编代码时所使用的工具会将这些特定指令解析并转换为处理器能直接识别并执行的二进制指令序列。
例如,在编写Windows或Visual Studio相关代码时使用的MASM(全称是Microsoft Macro Assembler)是一种专门针对x86处理器设计的高级汇编开发工具。
汇编语言的组成
汇编语言由三类指令组成:
- 汇编指令项:有对应一条唯一的机器码编码。
- 伪指令项:无直接对应的机器码编码,并由编译器生成并解释执行。
- 其他符号项:例如+、-、*、/等算子符号,在程序运行时由编译器解析识别,并无直接对应的机器码编码。
汇编语言的核心是汇编指令,它决定了汇编语言的特性。
存储器
存储器是我们把执行指令与处理数据的场所,并简称为内存。即使性能再好,在没有内存的情况下也无法正常工作。硬盘上存入的数据或程序只有传送到内存中后才能被CPU所执行。
注
注
指令和数据
在内存与磁盘上操作与数据不可区分,并统一表现为二进制形式;当CPU运行时会将获取的信息视为操作指令,并将其视为数据对象;为同样的数据赋予不同的功能意义。
比如,在内存中存储了一串二进制信息...(如二进制数$),计算机可以通过特定的操作将其转换为十进制表示(如89D8H),并按照预设的操作流程对其进行计算与管理(如执行mov ax, bx这样的操作)
注
注
存储单元
内存空间被划分为多个独立的存储块,并从零开始依次标号。所有这些位从零开始依次标号。每个信息载体均占用一个完整的信息字节。计算机内部数据量是以二进制位组合为基础的基本单位进行计量的。
CPU对存储器的读写
为了完成从内存中读取数据的任务,CPU必须首先设置存储单元的地址值。当CPU执行read或write操作时,还需要指示其作用于哪个设备(例如:存储器)以及具体的操作类型,即是从该设备中读取数据还是向其中写入新数据。
注
注
注
地址总线
地址总线(Address bus)宽度直接关系到CPU能够访问的物理地址空间。简单来说,就是CPU实际上能支持的最大内存容量。
数据总线
数据总线的宽度决定了CPU和外界的数据传送速度。
控制总线
控制总线的宽度决定了CPU对外部器件(例如,内存)的控制能力。
小结
汇编指令是机器指令的一种表现形式,在一一对应关系下直接对应每一种CPU特有的汇编指令集。CPU可以直接使用的计算机信息储存在内存中。
存储器中的指令与数据本质上没有区别,在二进制编码体系下共同承载着执行功能的信息。
每个CPU芯片都拥有众多管脚,在这些管脚上连接着不同类型的总线;也可以从另一个角度理解为这些管脚连接到不同的总线上面。一个CPU最多能够引出三种不同宽度的总线端口标志了该CPU在性能上的三个主要特性:
地址总线宽度直接决定了该CPU在寻址操作上所能达到的能力等级;而数据总线宽度则直接决定了该CPU在一次传输操作中能够处理的数据量;
控制总线宽度则直接反映了该CPU对系统内其他设备进行控制操作的能力强弱程度。
整个内存地址空间是一个综合性的概念:对于一个运行中的CPU系统来说,在它所支持的所有存储器资源基础上形成了统一的逻辑存储空间;这个逻辑存储空间容量受到当前系统寻址能力所限制,
这个统一的逻辑存储空间即被定义为系统的内存地址空间。
注
注
