版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、汇编语言程序设计Ch. 4 宏汇编语言 4.1 汇编语言程序的开发过程 4.3 宏汇编语言的基本语法1第4章 宏汇编语言2例:B0 41B4 0ECD 10B8 00 4CCD 21mov al,A ;显示“A”mov ah,14int 10hmov ax,4c00h;返回操作系统int 21h 3 ex1 code segment para public code assume cs:code go: mov al,A ;显示“A” mov ah,14 int 10h mov ax,4c00h;返回操作系统 int 21h code ends;代码段结束 end go ;模块结束,并给出启动
2、地址 end ;结束44.1 汇编语言程序的开发过程 编 辑TASM翻译(汇编程序)XX .ASMXX .OBJXX .EXE运行正确?XX .COM链 接TLINKNO查找错误(动态调试)TD结 束YES54.3 基本语法4.3.1源程序结构 汇编语言源程序是分段的,一般由若干个段形成一个程序。 格式如下: 编 辑TASM翻译(汇编程序)XX .ASMXX .OBJXX .EXE运行正确?XX .COM链 接TLINKNO查找错误(动态调试)TD结 束YES6NAME1 SEGMENT语句语句 NAME1ENDSNAME2 SEGMENT语句语句 NAME2ENDS NAMEn SEGMEN
3、T语句语句 NAMEnENDSEND74.3.2语句行的构成 语句行是由标记及分隔符按照一定的规则组织起来的。 1. 标记 标记是宏汇编语言中有意义的最小单位。标记有下面几种。 (1)宏汇编字符集字母: A,B Z;a,b z; 数字:0,1 9; 特殊字符: ASCII码中的其余可打印字符;8 非打印字符: 空格,TAB,回车,换行等。 注意:紧跟回车,换行的“&”代表一连续行, 作空格处理。 (2)常量 出现在源程序中的固定值称作常量。 数字常量 例:1001B,45Q,0FBA9H 字符串常量 例:A,Student (3)标识符 由程序设计者自由创立的有特殊意义的字符串 称作标识符。标
4、识符的第一个符号不能是数字。9 长度31。 例:go, go-1; 例:abcdz-1234 与 abcdz-12345 相同。 (4)保留字 保留字是汇编程序所用到的字符串,包含助 记符,运算符等。 102. 符号符号本身就是标识符或保留字,符号的属性为汇编程序提供了必要的信息。寄存器符号 32位、16位、8位和1位(2)变量 值是可以改变的量。 变量存放在数据段。它在程序中以存储单元地址符号的形式出现。 所有变量有3种属性:段值,偏移量,类型。11例: VAR1 DB 16,32,88它所对应的段是数据段,VAR1= 16 ,VAR1+1=32, (3)标号 标号定义在代码段。它是指令或常
5、量存放单元的符号地址。 标号有三种属性:段值,偏移量,类型。 类型有两种:NEAR,FAR例: LLL:MOV AX,89H TAB DB 0c0H,0f9H,0a4H,0b0H,99H,92H,82H,0f8H DB 80H,90H,88H,83H,0c6H,0a1H,86H,8eH123. 运算符 4. 表达式 前面所讲的符号,标记及运算符可以有机地组成表达式。表达式可以分为数值表达式和地址表达式。135. 语句汇编语言中的语句只有两种:指令性语句和指示性语句 NOPREPE SCASDGO:MOVAL,A;AL=41H方括号 “ ”表示任选项;“ ”表示必选项。 指令性语句是以指令为主构
6、成的语句。其书写格式如下: 标号: 前缀 指令助记符 操作数 ;注释14 指示性语句书写格式如下:标识符伪指令 操作数 ;注释 指示性语句是以伪指令为主构成的语句,因而又称作伪语句。 标识符可以是过程名、变量名、符号常量、段名;伪指令是CPU不认识的,它仅为汇编程序或链接程序提供信息。 标号: 前缀 指令助记符 操作数 ;注释154.3.3 指示性语句与部分伪指令 1. 符号定义语句 (1)等值语句句法:符号名EQU 表达式例:XXEQU39YYEQU5809HZZEQUAAA;指令COUNTEREQUCX;寄存器等值语句在解除前不可重新定义。 16(2) 解除语句句法: PURGE符号1 ,
7、符号2, ,符号n 该语句用于清除不再使用的已定义符号。例:XXEQU 12PURGE XXXXEQU DX(3) 等号语句句法:符号名=表达式 该语句与等值语句类似,但可对已使用的符号重新定义。例:XX=12XX=XX+1172. 数据定义语句 程序通常由指令和数据组成。程序运行前,DOS既要为必须使用的数据工作区(变量、栈区等)申请贮存空间,又要为源程序中的变量赋予初值。数据定义语句就是指示汇编程序处理变量的伪语句。 句法1:变量名 DB 初值1 | ? ,初值1 | ?, 句法2:变量名 DW 初值1 | ? ,初值1 | ?, 句法3:变量名 DD 初值1 | ? ,初值1 | ?,
8、句法4:变量名 DF 初值1 | ? ,初值1 | ?, 句法5:变量名 DQ 初值1 | ? ,初值1 | ?, 句法6:变量名 DT 初值1 | ? ,初值1 | ?, 注意:在实模式中,一个段的空间是64KB。183. 程序分段与存储分配语句 (1)段定义语句句法:段名 SEGMENT 定位方式 联合方式 模块名 段长 语句 段名 ENDS19定位方式 定位方式通知链接程序: 逻辑段的信息在存储器中如何存储。 有4种描述: BYTE: 可以从任意地址存放; WORD:从偶地址开始存放; PARA (或缺省): 从能被16整除的地址开始存放; PAGE : 从能被256整除的地址开始存放。
9、20 链接参数 链接参数有6种描述: a. PUBLIC 通知链接程序,把不同模块中, 具有PUBLIC属性的 同名段, 在满足定位参数的要求下, 按指定的链接顺序链接成一个逻辑段 。 b. COMMON 通知链接程序把不同模块中都具有COMMON属性的同名段, 根据指定的链接顺序, 按照 “覆盖” 方式, 组合成一个逻辑段, 共享的存储器区域长度是各模块中的最长的同名段的长度。 21c . STACK 具有STACK属性的段是堆栈段, 链接程序将把同名段组合成一个大的堆栈。d. AT 如: DATA SEGMENT AT 40H ORG 17H KEYFLAG DB 33H DATA END
10、S 表明逻辑段段基址为40H,KEYFLAG的偏移地址为17H。 注意: 因为程序在主存中的位置是由操作系统分配的,用户程序不能指定代码逻辑段的段基址。 22 分类名 分类名的名字由程序员命名, 通常数据段分类名为DATA, 代码段分类名为CODE, 通知链接程序, 把分类名相同的同名逻辑段放在邻近的存储区。 段长度: USE16 表示该段体积最大64K, 单元偏移地址为16位, 采用16位寻址;USE32 表示该段体积最大4G, 移地址为32位, 采用32位寻址。在实模式下运行, 应选用USE16。 只有在模块化程序中, 才有必要考虑链接参数的选择。单一模块 程序中, 定位参数, 链接参数,
11、 分类名均选用 “缺省”表示即可。230w-1D0z-1z+v-1C0y-1y+u-1B0 x-1A 计 数 器 段 名 例:依次出现段名为A、B 、C 、B 、 C 、 D的6个段,它们的长度分别为x 、y 、 z 、u 、 v 、 w,汇编程序对其处理过程见下图。24(2)段约定语句句法: ASSUME段寄存器:段名,段寄存器:段名, 该语句通知汇编程序,寻址时使用哪一个段寄存器。 一般放在代码段且为第一条语句; 仅约定寻址时使用哪一个段寄存器,而其初值 由程序设置; 在DOS环境中,CS的初值由DOS自动设置。(3)定位语句句法: ORG 表达式254. 过程定义语句句法:过程名PROC类型 :过程名ENDP5. 结束语句句法:END标号6. 方式选择伪指令See P77。26 .486 DATA S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026四年级数学上册 三位数乘两位数易错纠正
- 2026五年级数学下册 分数验算方法
- 志愿岗岗位责任制度
- 总经理生产责任制度
- 户外人员岗位责任制度
- 托管安全责任制度范本
- 扬尘三方责任制度
- 技术员岗位安全责任制度
- 护士医嘱责任制度
- 报销签字责任制度
- 《塑造卓越团队》课件
- 个人欠薪协议书范本
- 2025年四川省成都市高考英语二诊试卷
- 2025年全球人形机器人报告
- 彩钢瓦遮雨棚安装施工方案
- 信息技术基础 课件 单元1 Windows10 操作系统基础
- 新编护理三基复习测试题
- 高速公路服务区服务项目投标文件(技术方案)
- GB 4234.2-2024外科植入物金属材料第2部分:纯钛
- 眼袋手术课件
- 幼儿园小班音乐《袋鼠妈妈》课件
评论
0/150
提交评论