第六章_汇编语言(1)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
RET
2.汇编语言与高级语言(Assembly 2.汇编语言与高级语言(Assembly LanguagBaidu Nhomakorabea Language and and Computer-independent Computer-independent Language) Language) • 汇编语言是一种依赖于计算机微处理器的语言 • 汇编语言一般不具有通用性和可移植性 • 进行汇编语言程序设计必须熟悉机器的硬件资 源和软件资源 • 高级语言是面向过程的语言 • 高级语言具有很好的通用性和可移植性
DATA ENDS
;*****************************************************
;************************************************* STACK SEGMENT DB TOP ('S') 256 DUP DUP('S') ; 堆栈段定义结束 ; 堆栈段定义开始
本章内容
� 汇编语言程序的格式 � 汇编语言程序的上机过程 � 伪指令语句 � 汇编语言程序设计的基本方法
学习目的
� 了解汇编语言程序的基本格式,及 其上机过程。 � 熟练掌握数据定义伪指令、段定义 伪指令、符号定义伪指令、过程定 义伪指令。 � 熟练掌握汇编语言程序设计的一般 步骤以及顺序程序、分支程序、循 环程序、子程序设计的方法。
EQU $ -STACK $-STACK
STACK ENDS
;************************************************* ;************************************************ CODE SEGMENT ; 代码段定义开始 ; 主程序开始
1.汇编语言源程序的结构(Program 1.汇编语言源程序的结构(Program Structure) Structure) 例6-2 完整的汇编语言源程序示例。
NAME HEXTOASC ;***************************************************** DATA SEGMENT HEX ASC DB 5AH (?) DB 2 DUP DUP(?) ; 数据段定义结束 ; 数据段定义开始
地
址
机器代码 24 0 F 0F 3C 0A 72 02 04 07 04 30 C3
对应的汇编指令 AND AL,0FH CMP AL,0AH JB NUM ADD AL,07H
NUM:ADD AL,30H
E380:0000 E380:0002 E380:0004 E380:0006 E380:0008 E380:000A
学习汇编语言的必要性
1. 利用汇编语言可以设计出效率极高的核 心底层程序。 2. 用汇编语言编写的程序一般比用高级语 言编写的程序执行得快,且所占内存较 少。 3. 汇编语言程序能够直接有效地利用机器 硬件资源。 4. 学习汇编语言对于理解和掌握计算机硬 件组成及工作原理是十分重要的。
6.1.2 汇编语言源程序的组成
ASSUME CS:CODE, DS:DATA, SS:STACK START: MOV AX, DATA
例6-1
将4位二进制数转换为ASCII码字
B-1001B时,对应的ASCII码为 符。当数在0000 0000B-1001B B~1111B时,对应的ASCII ‘0’~‘9’;当数在1010 1010B~1111B 码为‘A’~‘F’。设待转换的数据已在累加器AL中 (低4位)。
编制的机器语言程序与汇编语言 程序如下表所示。
6.1 汇编语言与汇编程序
6.1.1 汇编语言的基本概念
1 Machine Language Language 机器语言与汇编语言((Machine 1 机器语言与汇编语言 and and Assembly Assembly Language) Language)
由二进制代码0,1表示的指令称为机器 指令,相应的程序称为机器语言程序 。 用指令助记符表示的指令称为汇编语言 指令,对应的程序称为汇编语言程序。