第4章-2微机原理_第1页
第4章-2微机原理_第2页
第4章-2微机原理_第3页
第4章-2微机原理_第4页
第4章-2微机原理_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章汇编语言程序结构4.1初步涉及汇编语言程序

4.2汇编语言伪指令

4.3汇编语言程序的上机过程

4.4DOS系统功能调用

4.5汇编语言程序设计

14.3汇编语言程序的上机过程(1)编辑软件。如EDIT.COM、NE.COM、WORD、PE等(2)汇编程序。对汇编源程序进行汇编的工具,如MASM.EXE、TASM.EXE等,一般使用宏汇编MASM.EXE。TASM是比较先进的汇编工具,适用于8086/8088~Pentium系列指令系统所编写的汇编源程序(3)连接程序。能将MASM产生的机器代码(.OBJ)文件连接成可执行文件(.EXE)的工具,如LINK.EXE、TLINK.EXE等(4)运行、调试程序。对由LINK产生的可执行(.EXE)文件进行运行和调试的工具,如DEBUG.EXE、CodeView.EXE、TD.EXE

1、操作环境24.3汇编语言程序的上机过程2、操作过程通过一具体程序演示整个操作过程3过程1:源程序的编辑注意:所创建的汇编文件必须为纯文本文件;需指定文件的扩展名为.ASM

4.3汇编语言程序的上机过程调用EDIT等编辑软件建立扩展名为.ASM的源程序文件(如mypgm.ASM),并保存到磁盘的目标文件夹中

过程2:源程序的汇编汇编是将源程序翻译成由机器代码组成的目标模块文件的过程,由汇编程序MASM完成。MASMmypgm.asm如果源程序中没有语法错误,MASM将自动生成一个目标模块文件(mypgm.obj);否则MASM将给出相应的错误信息这时应根据错误信息,重新编辑修改源程序后,再进行汇编。4过程3:目标模块的连接连接程序把一个或多个目标文件和库文件合成一个可执行文件:LINKmypgm.obj如果没有严重错误,LINK将生成一个可执行文件(mypgm.exe);否则将提示相应的错误信息这时需要根据错误信息重新修改源程序后再汇编、链接,直到生成可执行文件4.3汇编语言程序的上机过程5过程4:可执行程序的调试经汇编、连接生成的可执行程序在操作系统下只要输入文件名就可以运行:例:mypgm操作系统装载该文件进入内存,并开始运行如果出现运行错误,可以从源程序开始排错,也可以利用调试程序帮助发现错误采用DEBUG.EXE调试程序:

DEBUGmypgm.exe注:如果结果在寄存器或存储器中,则只能在DEBUG下查看结果技巧:通过练习,学会正确选用DEBUG中的各种命令有效地调试与运行程序

4.3汇编语言程序的上机过程6编辑文本编辑器,如EDIT.COM源程序:文件名.asm汇编汇编程序,如MASM.EXE目标模块:文件名.obj连接连接程序,如LINK.EXE可执行文件:文件名.exe调试调试程序,如DEBUG.EXE应用程序错误错误错误错误4.3汇编语言程序的上机过程74.4DOS系统功能调用DOS准备了许多程序(称为系统功能程序),涉及设备驱动和文件管理等方面的操作。系统功能调用是DOS为系统程序员及用户提供的一组常用子程序,对这些子程序的直接调用可以减少程序员对系统硬件环境的依赖,从而可以大大精简应用程序的编写;另一方面也可以使程序具有较好的通用性

系统功能调用?8一、系统功能调用方法DOS系统功能调用的方法一般可分为以下几步:①设置所要调用功能的入口参数。②在AH寄存器中存入所要调用功能的功能号。③INT21H指令自动转入中断子程序入口。④相应中断子程序运行完毕,可按规定取得出口参数。4.4DOS系统功能调用9二、常用的DOS系统功能调用1.带回显的键盘单字符输入(1号功能)2.不带回显的键盘单字符输入(8号功能)3.单字符输出(2号功能)4.字符串显示(9号功能)5.字符串输入(0AH号功能)6.程序正常返回系统(4CH号功能)4.4DOS系统功能调用101、1号系统功能调用(从键盘读入一个字符)功能:单字符输入。将键盘输入的字符的ASCII码值送AL寄存器,同时回显在屏幕上入口参数:无出口参数:AL寄存器存放输入字符的ASCII码值格式: MOVAH,1 INT21H说明:在输入一个字符后,不需要键入回车。若只键入回车,则出口参数AL得到的是回车符的ASCII码值0DH。4.4DOS系统功能调用112、2号系统功能调用(显示一个字符)功能:单字符输出。即将以DL寄存器内容为ASCII码值的ASCII字符输出到屏幕上。入口参数:DL=要显示字符的ASCII码值出口参数:无格式:MOVDL,要显示的字符

MOVAH,2 INT21H说明:掌握的回车符和换行符的使用。回车:0DH,换行:0AH。例:MOVDL,41H;41H=‘A’ MOVAH,2 INT21H屏幕上输出字符“A”4.4DOS系统功能调用129、9号系统功能调用(显示一个字符串)功能:字符串输出。即将DS:DX所指的以$字符结尾的一个字符串输出到屏幕上。入口参数:DS:DX=要显示的字符串在内存中的首地址出口参数:无格式:LEADX,字符串变量名

MOVAH,9 INT21H……例:strDB‘HELLOworld!’,’$’ …… LEADX,str

MOVAH,9 INT21H说明:要显示的字符串必须以’$’作为结束标志,’$’不属于被显示的字符串4.4DOS系统功能调用134、程序正常返回系统的方法(4CH号系统功能调用)功能:返回系统入口参数:AL=终止代码或无格式: MOVAH,4CH 或 MOVAX,4C00H INT21H INT21H4.4DOS系统功能调用145、10号系统功能调用(从键盘读入一个字符串)功能:从键盘读入一个字符串,将其保存到DS:DX指定的内存缓冲区中。这个缓冲区由3部分组成:第一字节定义缓冲区大小;第二字节用于系统回填实际输入的字符个数;从第三字节开始保存键盘输入字符的ASCII码值。入口参数:DS:DX=存放该字符串的输入缓冲区的首地址出口参数:实际输入字符个数保存在缓冲区第二字节的位置(不包括回车符),实际输入字符的ASCII码值(包括回车0DH)顺序保存在缓冲区第三字节开始的位置。说明:(1)可输入的字符个数最多为缓冲区第一字节内容减1,最少字符个数为0。(2)输入以按“回车键”结束,并将回车字符(0DH)保存在输入字符的最后一个位置上4.4DOS系统功能调用15格式:LEADX,缓冲区首地址;设DS已指向用户定义的数据段

MOVAH,10;或0AHINT21H调用方法示例:……

BUFDB20;定义缓冲区大小,实际可输入字符最多20-1个

DB?

;存放实际输入的字符个数,由系统自动设置

DB20DUP(?) ;存放实际输入的字符串

……

LEADX

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论