下载此文档

黑色背景图片-课件·PPT.ppt


文档分类:办公文档 | 页数:约26页 举报非法文档有奖
1/26
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/26 下载此文档
文档列表 文档介绍
第三章汇编语言程序格式
汇编语言程序由执行性语句和说明性语句构成。第二章介绍的可完成相应功能的指令即是执行性语句,是与机器指令一一对应的指令。而说明性语句只是为汇编程序提供必要的信息的指令,又称为伪指令,它与机器指令无关。
本章主要让读者掌握汇编语言程序的基本格式,并通过上机实践,熟悉汇编语言程序的开发过程及其调试方法。
本章重点:伪指令、汇编语言程序结构、上机过程
第一节伪指令
伪指令是指示如何汇编、连接,不直接产生机器指令。
一、段定义伪指令
格式:段名 SEGMENT [定位类型] [组合类型] [‘类别’]
:
段名 ENDS
功能:定义一个以SEGMENT伪指令开始、以ENDS伪指令结束的段。各项用空格分隔,加方括号表示可选项。
:用户定义的,表示该段的段首地址,含段地址和偏移地址两个属性。段开始和段结束的段名必须相同。
段名作为操作数用于指令中时,表示立即数的段地址。
:定义段起始地址的类型,用于连接时。
1)BYTE (字节起点):表示本段以任意边界开始。
2)WORD (字起点):表示本段以偶数地址边界开始。
3)PARA (节起点):表示本段以节边界开始(10H为一节)。默认
4)PAGE (页起点):表示本段以页边界开始(100H为一页)。
:为连接程序提供本段与其他段的组合关系。
1)NONE(不连接):表示本段与其它段无连接关系,依次存放。
2)PUBLIC(公用段):表示本段与同名的其它段相邻连接,组成一个共同段。
3)STACK(堆栈段):表示本段为堆栈段的一部分。
4)AT 表达式(定段地址):表示本段的段地址由表达式的值得到。不能指定CS。
MON(共同段):表示本段与同名的其它段相覆盖,长度由最长段长度定。
6)MEMORY:表示本段地址高于其它同名段。如多个段选该类型,则第一个有效。
4.‘类别’:用户定义的、用单引号括起来的字符串表示的合法的名称。连接时同类名的段(段名未必相同)连续存放,但仍然是不同的段。‘类别’名相同的各个段在连接时,先出现的在前,后出现的在后,每段都有自己的起始地址。
一个汇编语言源程序可以有几个段,每段由各自的段定义伪指令包含起来,以将数据和代码明确地分开。
在代码段(CS)开始执行指令前,必有一条伪指令ASSUME以明确段和段寄存器间的关系,但并不初始化段寄存器的值。
格式:
ASSUME CS:代码段名,DS:数据段名,ES:附加段名,SS:堆栈段名
其中每个段名是各段定义时的段名。
例如:DATA SEGMENT ;定义数据段
:
DATA ENDS
CODE SEGMENT ;定义代码段
ASSUME CS:CODE,DS:DATA
:
CODE ENDS
其中ASSUME语句建立了CODE段名与CS寄存器、DATA段名与DS寄存器的对应关系。
二、程序结束伪指令
格式:
END [标号]
功能:源程序中最后一个语句,标志整个程序的结束,汇编程序遇到该指令即停止汇编。
主程序结束:END 标号;该标号为程序开始的起始地址。
子程序结束:END

例如:END START ;START是该程序的第一条可执行指令的标号
告诉汇编程序用此地址的值来初始化CS:IP。

注意:这条指令必不可少,但不能放在程序的中间,否则,END语句后的语句就不能被汇编为目标代码了。
三、变量定义伪指令:为变量分配内存空间,并赋予初始值。
格式:
[变量名] 助记符操作数[,…,操作数]
DB:定义字节,每个操作数占一字节的内存单元。
DW:定义字,每个操作数占一个字的内存单元。
DD:定义双字,每个操作数占二个字的内存单元。
DQ:定义四字,每个操作数占四个字的内存单元。
DT:定义十字节,每操作数占十字节的内存单元。
(Byte、Word、Dword、Qword、Tbyte)
其中变量名、助记符和操作数之间以空格隔开,且[ ]中内容为可选项。下面介绍各个部分的作用。
1)变量名是用户定义的一个符号地址,表示操作数的首地址,它有三个属性:段地址、偏移地址和数据类型。数据类型根据助记符的不同而不同。
2)DW可用于存偏移地址,如IP值;DD可用于存逻辑地址值,如CS:IP值;DT可用于存压缩的BCD码。
3)操作数可为常数、常数表达式、地址表达式、字符串、“?”和带DUP复制操作符的表达式等。操作数为多个值时,以逗号间隔开。每个值根据助记符的不同而占不同的内存单元个数。
例: S1 DB 1,2,2*3
ADD2 DW S1
S1占三个字节的内存单元,其内容按顺序分别为1、2、6。
ADD2占一个字的内存单元,其内容为变量S1的

黑色背景图片-课件·PPT 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数26
  • 收藏数0 收藏
  • 顶次数0
  • 上传人aidoc1
  • 文件大小0 KB
  • 时间2015-10-15
最近更新