微机原理与接口技术汇编语言程序教案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

讲授内容

第4章汇编语言程序设计

4.1 汇编语言程序基本格式

4.1.1 汇编语言格式

机器语言是计算机能直接识别和执行的语言,用一串“0”、“1”数字代码表示。

汇编语言是一种符号语言,它用某种容易记忆的英文缩写去表示机器指令操作码(指令助

记符),用人们熟悉的数码及数学符号等表示操作数、地址。

4.1.2汇编语言源程序和汇编程序

用汇编语言编写的程序称为汇编语言源程序,或简称为源程序。对程序员来讲,符号语言

简单直观、便于记忆,比二进制数表示的机器语言方便了许多。但计算机只“认识”机器语言

而不认识这些文字、数字、符号,为此人们创造了一种程序,叫汇编程序。如同英汉之间对话

需要“翻译”一样,汇编程序的作用相当于一个“翻译员”,自动地把汇编语言源程序翻译成机

器语言。该过程称为汇编,完成汇编任务的程序称为汇编程序,相应形成的机器语言程序称为

目标程序。汇编后形成的目标程序虽然是二进制代码,但还不能直接上机运行,必须经过连接

程序(LINK)连接,将库文件或其它目标文件连接到一起形成可执行文件后,才能送入计算机

执行。汇编语言程序从建立到汇编、连接形成可执行程序的整个过程如图所示。

4.1.3汇编语言的特点

1. 执行速度快

2. 程序短小

3. 可以直接控制硬件

4. 可以方便地编译

5. 辅助计算机工作者掌握计算机体系结构

4.1.4一般汇编语言程序的结构形式

4.2汇编语言基本语法

4.2.1常量、变量与标号

1. 常量

⑴数值常量

汇编语言中的数值常量可以是二进制、八进制、十进制或十六进制数,书写时用加后缀的

方式标明即可,对于十进制数可以省掉后缀。对于十六进制数,当以A~F开头时,前面加数字

0,以避免和名字混淆。

3. 段定义伪指令

⑴ SEGMENT和ENDS

段定义伪指令。该指令能对程序分段。其格式为:

段名 SEGMENT [定位类型][组合类型][‘类别’]

段名 ENDS

⑵ ASSUME

段寄存器指派伪指令。格式为:

ASSUME 段寄存器:段名[,段寄存器:段名……]

⑶ ORG

移动地址指针的伪指令。其格式为:

ORG 常量表达式

4. 过程定义伪指令PROC和ENDP

过程名 PROC [NEAR/FAR]

过程名 ENDP

5. 程序标题伪指令TITLE

格式:TITLE 文本

其中,文本是用户给出的字符串,要求长度不超过6个字符。

6. 地址计数器与对准伪指令

⑴地址计数器$

例如:ARRAY DW 1,2,$+4,3,4,$+4

如汇编时ARRAY分配的偏移地址为0074,则汇编后的存储区将如图4.2所示。

⑵ ORG伪指令

ORG伪指令用来设置当前地址计数器的值,其格式为:

ORG CONSTANT EXPRESSION

如常量表达式的值为N,则ORG伪指令可以使下一个字节的地址成

为常量表达式的值N。

例如: VECTORS SEGMENT

ORG 10

VECT1 DW 47A5H

VECT2 DW 0C596H ORG 20

VECTORS ENDS

则VECTL的偏移地址值为0AH,而VECT2的偏移地址值为14H。

7. 基数控制伪指令

⑴二进制数

由一串0和1组成其后跟以字母B,如00101100B。

⑵十进制数

由0~9的数字组成的数。一般情况下,后面不必加上标记,在指定其它基数的情况下,后面可跟字母D,例如178D。

⑶十六进制数

. .

相关文档
最新文档