汇编语言的基本语法.ppt
5.4汇编语言程序的上机过程汇编语言程序上机运行的过程有以下几个步骤:(1)用编辑程序建立.ASM源文件;(2)用宏汇编程序MASM等汇编源文件,生成.OBJ目标码文件;(3)用连接程序LINK对目标码文件等模块进行连接,生成.EXE可执行文件;(4)?键入可执行文件名执行该文件,分析执行结果;(5)用DEBUG等工具调试.ASM源程序,再汇编、连接、运行,直到得出正确结果。 为此,除了DOS系统软件和编辑程序外,还需要备置如下程序:汇编程序masm.exe或asm.exe或tasm.exe等连接程序link.exe或tlink.exe等汇编调试程序等交叉引用程序cref.exe符号索引文件处理程序等第31页,共52页,星期日,2025年,2月5日1、建立源文件可使用任何一种能建立ASCII文本文件的编辑程序来建立汇编源程序文件,扩展名为.ASM。在使用各种文字编辑程序时,被编辑的源文件(.ASM)中不应有排版格式控制符。第32页,共52页,星期日,2025年,2月5日2、汇编编辑生成的.ASM源程序文件,须经汇编程序进行汇编,生成二进制代码的目标文件。常见的汇编程序有行汇编和宏汇编两种类型。
行汇编——常用DEBUG.EXE的A命令,生成的目标代码可作为.COM文件存盘,也可在DEBUG环境下直接运行。
行汇编简单直观,生成的目标程序所占用的内存空间最小;但汇编按绝对地址进行,长度限制在64KB范围内,目标程序没有与其它程序模块连接的信息,要由用户或安装程序实现各个目标程序在内存中的地址分配,这样既可能使各程序之间产生太大的空隙(造成浪费)、也可能造成各程序的内存存储冲突。
宏汇编MASM——对汇编语言源程序*.ASM进行汇编常用方法。第33页,共52页,星期日,2025年,2月5日DEBUG的使用方法1.DEBUG的运行2.DEBUG的主要命令D,显示内存单元内容;U,反汇编命令;R,显示与修改寄存器内容;E,修改内存单元内容;A,汇编命令;T、P,单步执行指令;G,连续执行指令;N,指定装入文件名或写入文件名;L,装入N指定的文件;W,将指定内容写入N指定的文件;Q,退出DEBUG程序,返回操作系统状态。第34页,共52页,星期日,2025年,2月5日5.3ROMBIOS中断调用
和DOS系统功能调用5.3.1ROMBIOS中断调用BIOS(BasicInputOutputSystem)基本输入输出系统是一组固化到计算机内主板ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机后自检程序和系统自启动程序,提供最低级、最直接的硬件控制,是硬件与软件之间的接口。第35页,共52页,星期日,2025年,2月5日BIOS的功能:系统自检及初始化对硬件设备进行自检;对外部设备初始化;设置中断向量;引导操作系统等;程序服务处理为操作系统和应用程序提供与I/O有关的系统服务。BIOS直接与I/O设备打交道,通过端口与I/O设备传送数据,使应用程序脱离具体的硬件操作。硬件中断处理提供硬件中断服务程序BIOS的服务功能是通过调用中断服务程序来实现的第36页,共52页,星期日,2025年,2月5日中断:CPU执行程序的过程中,由于出现了某个事件,CPU暂停当前程序,转而去执行其他程序,处理完后,返回被暂停的程序继续执行,这个过程称为中断,引起中断的事件称为中断源。处理该事件的程序称中断服务程序。中断号:8086系统允许256种中断,每种中断对应0~255之间的一个数,称为中断号。每种中断都对应于一种中断服务,在实模式下,将中断服务程序的入口地址称为中断向量,存放256个中断向量的内存区域称为中断向量表第37页,共52页,星期日,2025年,2月5日第1页,共52页,星期日,2025年,2月5日5.1汇编语言的特点1、机器指令:计算机能识别的代码,机器指令是由二进制数组成的。例如: PUSHAX机器指令为:2、汇编语言:汇编语言是一种符号语言,用助记符表示操作码,用符号或符号地址表示操作数或操作数地址,它与机器指令是一一对应的。3、高级语言:面向过程(如C,FORTRAN)或对象(如C++,Java)的语言,不依赖于机器,因而有很好的通用性和可移植性.第2页,共52页,星期日,2025年,2月5日 汇编语言与高级语言的比较特征汇编语言高级语言目标程序运行时间短长