宏汇编软件的使用宏汇编软件MASM51的使用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
宏汇编软件的使用宏汇编软件MASM51的使用
第一节概述
单片机开发可以用手工汇编和机器汇编两种方法。采用手工汇编就是先编写出汇编程序,然后对照单片机汇编表手工将汇编程序翻译成机器码,最后将机器码一个一个地送入开发仿真器的RAM中去进行调试。
由于采用手工汇编的机器码是相对于存储器的绝对地址进行定位的,因此在调试时,若要在程序中增加或删除一条指令,就会造成指令的绝对地址发生变化。这样除修改那条指令外,几乎所有转移、调用指令的操作数都要作相应的修改,稍有疏忽程序就会出错。
而采用机器汇编,在很大程度上可以避免上述麻烦。只要通过键盘输入源程序后,其余作工作都由计算机来进行,即查出相应的机器码,对地址进行定位,建立能被开发装置接收的机器码文件、建立能打印出清单的列表文件等等。机器码不需要再一个一个地从仿真器的键盘上键入,只要从PC机的通讯口直接传送到开发装置中去。因此使用机器汇编大大提高了单片机开发的速度。
源程序被输入到机器中后,以一个文件的形式保存起来,然后就可以对这个文件进行处理了,要对这个文件进行汇编,必须有相应的汇编程序。在PC机上进行汇编的程序有多种,以下介绍的MASM51软件就是其中的一种,它的主要特点有:
1.对用户编写的源程序格式要求不太严格,例如,英文字母的大、小写不受限制,变量名或标号名没有长度限制,对源程序中的空格数也没有严格的要求等等。这些给用户编写程序带来很大的方便。
2.具有较强的功能,例如支持宏语句,使同一程序中类似的程序结构,只要输入一次,在使用时可用宏语句调用。此外还允许用条件汇编语句以及完善的伪指令系统等。减少了编写、输入源程序的工作量。
3.不管用户的源程序有多少错误,它都能全部汇编完,并能形成列表文件及目标文件,以供用户修改错误。
4.可以接收汉字注释,并能完整的将汉字注释复制到列表文件,而其它一些汇编软件则不能处理汉字,或会使列表文件中的汉字注释混乱。
运行MASM51软件的条件很低,现在的PC机都能达到。
第二节如何启动MASM51宏汇编程序
一、启动和退出
MASM51软件有两个文件:MASM51.EXE和MASM51.OVL,只要将这两个文件拷入硬盘的一个目录中(如MASM51)中,然后在DOS命令行中打入:
MASM51(回车)
即在显示器上显示如下信息:
The Cybernetic Micro Systems
CYS-8051 Software Package
Version 3.03`
for the IBM Personal Computer
(C)Copy right Cybrenetic MIcro Systems,Inc 1983,1984,1985, 1986
High Level Language Commands
ASM51[file] P8751 file P8744 file//
P27XX file COMP[file] READ[kbytes] DISP[start,num]
INITIALIZE CLEAR LIST EXIT
RUN[file] GOTO Label STOP CONT
DIR[spec] TYPE file DOS cmd HELP
PRINT arglist EQU = WARBLE
DELAY[secs] CLS HLSEARCH flag BEEP
OFFSET pc[,loc] PROM type SECURE SA VE file[,start,num]
LOAD file EDBYTE pc PVOLT value PSETUP num,value
>
信息的出现说明已进入MASM51宏汇编程序,在屏幕下方出现的符号‘〉’是宏汇编程序提示符,它的出现告诉用户,宏汇编程序处于接收命令状态。
虽然屏幕上提供了很多的命令,但大部份命令要在相应的硬件配合下才能实现。当用来汇编源程序时,使用的主要命令是:
ASM51 盘号:文件名〈回车〉进行汇编
DIR 盘号:文件名〈回车〉显示目录
EXIT 〈回车〉退出宏汇编
二、进行汇编
用户在使用宏汇编程序之前,应该已使用编缉器(如EDIT、CCED等)编好了8051汇编语言的源程序,并已作为一个文件存盘,该文件一般以.ASM为扩展名。
进入MASM51后,键入
ASM51 [d:filename[.asm] [选项]
如果省略扩展名,则系统默认为.asm,如果不以.asm为扩展名,则应键入文件的全名。汇编后,将产生两个输出文件:一个是16进制代码文件,以.hex为扩展名,另一个是列表文件,以.lst为扩展名,文件名与输入文件的文件名相同。
在汇编时,可以加入一些选项进行控制,可加的选项如下:
1./L选项:只在屏幕上显示列表文件的内容,不生成列表文件。
2./H选项:汇编后不在磁盘上产生.hex文件。
3./S选项:产生的列表文件中将不包括符号表。
4./P选项:汇编程序序所生成的符号表将成为能被其他源程序引用的永久符号表的一部份,即如果不退出宏汇编,该符号表将保留在内存中,在汇编其它源程序时可以引用它们,以便连接几个源文件。
5./N选项:使生成的列表文件在打印(或显示)时不分页。不加'/N'则每隔55行源代码生成一个新页头。
一般情况下,我们不需要在命令后面加任何选项。
如下面所示:
ASM51 Filename[.asm] [回车]即可