1 / 56
文档名称:

第三章 第01讲 宏汇编语言课件.ppt

格式:ppt   大小:2,102KB   页数:56页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第三章 第01讲 宏汇编语言课件.ppt

上传人:iluyuw9 2022/11/25 文件大小:2.05 MB

下载得到文件列表

第三章 第01讲 宏汇编语言课件.ppt

相关文档

文档介绍

文档介绍:该【第三章 第01讲 宏汇编语言课件 】是由【iluyuw9】上传分享,文档一共【56】页,该文档可以免费在线阅读,需要了解更多关于【第三章 第01讲 宏汇编语言课件 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。*
第三章80X86宏汇编语言
高级语言都规定了自己的语法,汇编语言也不例外
:字符集为ASCII,如A、B、C、D等
:指令,如MOV;伪指令,如SEGMENT等
:如寻址方式等
典型汇编语句
---如MOVAX,BX
---如DATASEGMENT

*
80X86宏汇编语言的基本语法(表达式)
1
80X86常用的指令的格式、功能
2
80X86常用的汇编控制命令(伪指令)
3
80X86常用的DOS系统功能调用
4
本章将要讲述的内容
*
为什么要学****表达式?

[标号:][指令前缀]机器指令助记符[操作数][;注释]

[名字]伪指令助记符[参数,…,参数][;注释]
、伪指令紧密相关的问题
(1)如何正确的选择操作符,干什么?
(2)如何表达其中的操作数、参数等?
、参数都可以归结为如何合理的使用各种表达式,表达式主要包括数值表达式和地址表达式
*
汇编程序对操作数的基本要求:
操作数的类型必须是明确的并且相匹配。
MOVAX,[BX]
下列语句中的操作数哪些是类型明确的,哪些是类型不明确的?
MOVAL,2[BX]
BUFDW10
MOVAX,BUF
归纳为以下几种情况:

(1)两个类型都明确;
(2)一个明确,一个不明确

两个都不明确
MOVDS:[2000],2
80X86强调汇编源程序对操作数的基本要求
*
引入符号常量的好处:
(1)便于程序阅读
(2)便于程序修改
数值符号化,使得数值有了意义。
例如定义:PI=
常量:在翻译转换阶段就已经有确定的数值,而不是在运行阶段就已确定的值就是常量。
在80X86中经常用到符号常量,符号常量就是给数值常量定义1个名字。
1、常量表达式
*
常量的主要用途及定义方法

(1)作为立即操作数使用:MOVAX,3
(2)寻址方式的组成部分:位移量V
(3)在数据定义中给变量赋初值

(1)等价伪指令“EQU”: AEQU3
(2)等号伪指令“=”: A=3
*
如何使用符号常量?
:直接引用符号常量的名字
MOVAX,A

(1)符号常量不分配存贮单元,与变量是不同的概念,只是建立一种等价代换关系,符号常量就是立即数
(2)符号常量可以出现在任何段中,汇编程序在汇编的过程中将符号常量直接转换为等价的数值常量
*
MOVCX,10
MOVAH,10[BX]
MOVDL,10[BX][SI]
数值常量
AAEQU10
BB=100
MOVCX,AA
MOVAH,AA[BX]
MOVDL,AA[BX][SI]
符号
常量
符号常量的应用举例(2)
注意符号常量与变量的本质差别
*
?
?
?
?
关于符号常量使用的几个问题(1)
*
MASM采用两遍扫描的方法对符号常量进行替换。
第1遍:从文件的第一行开始,顺序扫描源程序的每一行,进行如下的处理:
(1)若该行是定义符号常量,首先检查该常量是否已在符号表中。
若不在,则将该符号及其值放到符号表中;
若存在,则用新值代替旧值。
注:此步也可以检查是否有常量用EQU重定义。
(2)若该行是引用符号常量,则在符号表中进行查找。
若存在,即该符号在符号表中,则进行值替换。
若不在,则不替换。
MASM处理符号常量的方法(1)