2.2.1 汇编程序基本原理

2025-06-07 15:00:40 更新

(一)汇编语言

汇编语言:是为特定计算机或系统设计的面向机器的符号化程序设计语言。

汇编语言源程序:用汇编语言编写的程序。


语句类型

说明

区别

1

指令语句

又称机器指令语句,汇编后能产生相应机器代码,最终为CPU所执行。

类型:传送指令、算术运算指令、逻辑运算指令、移位指令、转移指令和处理机控制指令等

常见指令:ADD、SUB和AND等

(1)指令语句汇编后产生机器代码;伪指令语句不产生机器代码。

(2)指令语句对应操作在程序运行时完成;伪指令语句在源程序被汇编时完成的。

2

伪指令语句

指示汇编程序在汇编源程序时完成某些工作,例如给变量分配存储单元地址,给符号赋值等,由编译器来执行,而不被CPU执行

3

宏指令语句

宏的引用,允许将多次重复使用的程序段定义为宏


assume cs:codesg # cs段寄存器

codesg segment # 段开始

  mov ax, 0123H # 移动指令

  mov bx, 0456H

  add ax,bx # 加法指令

  add ax ax

  mov ax,4C00H # 程序返回

  int 21H # 程序返回

codesg ends # 段结束

end

(二)汇编程序

汇编程序:为解决计算机不能直接识别和运行符号语言程序而使用的翻译程序。

功能:将汇编语言所编写的源程序翻译成机器指令程序。

(1)汇编语言->机器指令

(2)处理伪指令

过程:两次扫描源程序(形成操作数地址的部分可能出现后面才会定义的符号)

第一次扫描源程序进行预处理,第二次扫描产生目标程序。

(三)理解

在指令集体系结构中,每条指令都有其对应的机器指令和符号指令

1)将指定数值移入特定寄存器

指令: 1234HAX

机器指令: 101110000011010000010010

符号指令: MOV AX,1234H

2)将两寄存器中的内容求和,结果返回其中某寄存器

指令: AX+BXAX

机器指令: 0000001111000011

符号指令: ADD AX,BX