文档详情

第四章-汇编语言程序格式.ppt

发布:2017-06-20约5.91千字共34页下载文档
文本预览下载声明
(五)属性操作数符 有PTR、段操作符、SHORT、THIS、HIGH和LOW 6种。 格式为: type PTR expression 注释项用来说明一段程序或一条或几条指令的功能,它是可有可无的。但是,对于汇编语言程序来说,注释项的作用是很明显的,它可以使程序易于被读懂,因此,编制程序必须写好注释。 (六)注释 4.4 汇编语言程序的上机过程 实验目的: 1、掌握常用工具软件MASM和LINK的使用。 2、伪指令: SEGMENT,ENDS,ASSUME,END,OFFSET,DUP。 3、利用的 1号功能实现键盘输入的方法。 4、用INT 21H 4C号功能返回系统的方法。 程序: 1、键盘输入字符并输出,大写转换为小写输出。 2、将字符串‘’This is a program ’用十六进制显示出来 3、将寄存器BX中的数据以ASC码的形式显示 实验步骤: 1、用用文字编辑工具(记事本或EDIT)将源程序输入,其扩展名为.ASM。 2、用MASM对源文件进行汇编,产生.OBJ文件和.LST文件。若汇编时提示有错,用文字编辑工具修改源程序后重新汇编,直至通过。 3、用TYPE命令显示1产生的.LST文件。 4、用LINK将.OBJ文件连接成可执行的.EXE文件。 5、在DOS状态下运行LINK产生的。EXE文件。 实验报告: 1、汇编,连接及调试时产生的错误,其原因及解决办法。 2、思考: 若在源程序中把INT 21H的H省去,会产生什么现象? 第四章 汇编语言程序格式 教师:吕金娜 主要内容 1 4.1 汇编程序功能 2 4.2 伪操作 3 4.3 汇编语言程序格式 4 4.4 汇编语言程序的上机过程 www,378700000.com 4.1 汇编程序功能 myfile.asm 编辑程序 汇编程序 连接程序 myfile.crf otherfiles.obj myfile.lst myfile.obj myfile.map myfile.exe 一个程序例子 名字 操作码 操作数 注释 DATA SEGMENT ;段定义开始 BUF1 DB 34H ;定义一个加数 BUF2 DB 2AH ;定义另一个加数 SUM DB ? DATA ENDS CODE SEGMENT ASSUME CS:CODE DS:DATA START: MOV AX,DATA MOV DS,AX ;ds段赋初值 MOV AL,BUF1 ADD AL,BUF2 ;求和 MOV SUM,AL ;保存和 MOV AH,4CH INT 21H ;返回dos CODE ENDS ;代码段结束定义 END START 汇编程序的主要功能 汇编程序的主要功能: 检查源程序,给出出错信息。 产生目标文件(.obj)和列表文件(.lst)。 展开宏指令。 4.2 伪操作 伪操作是汇编程序对源程序进行汇编时处理的操作,完成处理器选择、存储模式定义、数据定义、存储器分配、指示程序开始结束等功能。 4.2 伪操作 处理器选择伪操作 段定义伪操作 程序开始和结束伪操作 数据定义及存储器分配伪操作 表达式赋值伪操作 地址计数器与对准伪操作 基数控制伪操作 4.2.2 段定义伪操作 完整的段定义格式 data segment ; 定义数据段 … data ends ;---------------------------------------- extra segment ; 定义附加段 … extra ends ;---------------------------------------- code segment ; 定义代码段 assume cs:code, ds:data, es:extra start: mov ax, data mov ds, ax ; 段地址 ? 段寄存器 … code ends end start PSP ? DS ES S
显示全部
相似文档