论文部分内容阅读
摘要:随着软件规模的增长,高级语言成为软件开发中用的最多的程序设计语言,即便如此,高级语言也不能完全替代汇编语言。在和硬件关系密切的那部分软件的开发中,即使C语言也力不从心,而汇编语言则能满足这一需求,最大限度的发挥硬件的性能。操作系统的核心部分,底层的驱动程序等都使用汇编语言。另外由于汇编语言执行速度快,代码体积小,经常用在工业控制等对实时响应要求较高的场合。学习汇编语言要多上机调试,本文就汇编语言上机过程中遇到的问题全面介绍汇编语言上机运行的全过程。
关键词:汇编语言源程序;汇编;Debug 调试
汇编语言作为一种介于机器语言和高级语言之间的程序设计语言,有其独有的特点和应用场合。用汇编语言编写的解决应用问题的程序称作汇编语言源程序;将汇编语言源程序翻译成机器语言程序的软件称作汇编程序;将汇编语言源程序翻译成机器语言程序的过程称作汇编。汇编语言源程序上机运行需要MS-DOS操作系统的支持,也可运行在Windows 98以上的MS-DOS环境中。
一、编辑汇编语言源程序
二、汇编源程序
用编辑软件建立的源程序.asm文件,必须经过汇编才能产生.obj文件。
本步骤最需要注意的问题就是所用的masm汇编程序和编辑好的汇编语言源程序的路径,只要不在默认目录下的都要输入他们的实际路径,为此需键入:”e:\masm\masm 123”,因为汇编语言源程序123.asm已经保存在默认目录C:\Documents and Settings\Administrator下,就不用输入详细路径,而汇编程序masm不在默认目录下,故需要输入该程序所在的详细路径e:\masm\masm,如下图所示。
以上信息中方括中为该项提示的缺省回答值,冒号后面等待用户输入信息,若不改变缺省值则直接按回车键。
汇编后生成以下几个文件:
(1).OBJ文件是汇编产生的目标代码文件,当源程序中无语法錯误时,则在默认目录下自动存入一个.OBJ文件,供下一步连接用。若源程序有语法错误时,会出现错误信息提示,如上图所示。
(2).LST文件是列表文件,它将源程序中各语句及其对应的目标代码和符号表以清单方式列出,对调试程序有帮助。
(3).CRF文件(交叉引用文件),交叉引用.CRF文件给出了源程序中定义的符号引用情况,按字母顺序排列。
三、 连接目标程序
汇编产生的.OBJ文件,组成该文件所有目标代码的地址都是浮动的,机器不能执行。必须用连接程序LINK对其进行连接定位,产生.EXE可执行文件,方可运行。该步骤和上一步有同样需要注意的路径问题,输入连接程序LINK的实际路径,需要连接的.OBJ文件在默认目录下,可不用输入路径。
连接后生成两种文件:.EXE和.MAP
(1).EXE文件是可执行文件,若采用方括号中默认的名字,直接按回车键,否则需重新输入一文件名。若连接过程中无错误,则自动在当前默认目录下生成.EXE文件。若有错误,则会给出错误信息提示,这时必须重新修改源程序,再汇编、连接。
(2).MAP是连接映像文件,.LIB库文件,连接程序询问是否使用某种库文件,不需使用库文件直接按回车键。
四、运行程序
连接后生成的.EXE文件存放在当前的默认目录下,在DOS环境下直接键入文件名即可运行。
结论
总体上说,要掌握汇编语言源程序上机运行的操作过程,还是应该理解每一步骤的作用及原理,理解后就知道为什么要这样操作,该注意哪些问题,发生错误该怎样改正。因此汇编语言的学习不只是理解它全部的指令含义,还要理解它上机运行的原理。通过学习汇编语言,能够加深对计算机原理和操作系统等课程的理解;能够感知、体会和理解机器的逻辑功能,也为理解各种软件系统的原理,打下技术理论基础。
参考文献
【1】李忠.x86汇编语言:从实模式到保护模式【M】.第1版.北京:电子工业出版社,2013:1
【2】王爽.汇编语言【M】.第2版.北京:清华大学出版社,2008:4
关键词:汇编语言源程序;汇编;Debug 调试
汇编语言作为一种介于机器语言和高级语言之间的程序设计语言,有其独有的特点和应用场合。用汇编语言编写的解决应用问题的程序称作汇编语言源程序;将汇编语言源程序翻译成机器语言程序的软件称作汇编程序;将汇编语言源程序翻译成机器语言程序的过程称作汇编。汇编语言源程序上机运行需要MS-DOS操作系统的支持,也可运行在Windows 98以上的MS-DOS环境中。
一、编辑汇编语言源程序
二、汇编源程序
用编辑软件建立的源程序.asm文件,必须经过汇编才能产生.obj文件。
本步骤最需要注意的问题就是所用的masm汇编程序和编辑好的汇编语言源程序的路径,只要不在默认目录下的都要输入他们的实际路径,为此需键入:”e:\masm\masm 123”,因为汇编语言源程序123.asm已经保存在默认目录C:\Documents and Settings\Administrator下,就不用输入详细路径,而汇编程序masm不在默认目录下,故需要输入该程序所在的详细路径e:\masm\masm,如下图所示。
以上信息中方括中为该项提示的缺省回答值,冒号后面等待用户输入信息,若不改变缺省值则直接按回车键。
汇编后生成以下几个文件:
(1).OBJ文件是汇编产生的目标代码文件,当源程序中无语法錯误时,则在默认目录下自动存入一个.OBJ文件,供下一步连接用。若源程序有语法错误时,会出现错误信息提示,如上图所示。
(2).LST文件是列表文件,它将源程序中各语句及其对应的目标代码和符号表以清单方式列出,对调试程序有帮助。
(3).CRF文件(交叉引用文件),交叉引用.CRF文件给出了源程序中定义的符号引用情况,按字母顺序排列。
三、 连接目标程序
汇编产生的.OBJ文件,组成该文件所有目标代码的地址都是浮动的,机器不能执行。必须用连接程序LINK对其进行连接定位,产生.EXE可执行文件,方可运行。该步骤和上一步有同样需要注意的路径问题,输入连接程序LINK的实际路径,需要连接的.OBJ文件在默认目录下,可不用输入路径。
连接后生成两种文件:.EXE和.MAP
(1).EXE文件是可执行文件,若采用方括号中默认的名字,直接按回车键,否则需重新输入一文件名。若连接过程中无错误,则自动在当前默认目录下生成.EXE文件。若有错误,则会给出错误信息提示,这时必须重新修改源程序,再汇编、连接。
(2).MAP是连接映像文件,.LIB库文件,连接程序询问是否使用某种库文件,不需使用库文件直接按回车键。
四、运行程序
连接后生成的.EXE文件存放在当前的默认目录下,在DOS环境下直接键入文件名即可运行。
结论
总体上说,要掌握汇编语言源程序上机运行的操作过程,还是应该理解每一步骤的作用及原理,理解后就知道为什么要这样操作,该注意哪些问题,发生错误该怎样改正。因此汇编语言的学习不只是理解它全部的指令含义,还要理解它上机运行的原理。通过学习汇编语言,能够加深对计算机原理和操作系统等课程的理解;能够感知、体会和理解机器的逻辑功能,也为理解各种软件系统的原理,打下技术理论基础。
参考文献
【1】李忠.x86汇编语言:从实模式到保护模式【M】.第1版.北京:电子工业出版社,2013:1
【2】王爽.汇编语言【M】.第2版.北京:清华大学出版社,2008:4