欢迎来到天天文库
浏览记录
ID:33425831
大小:523.00 KB
页数:85页
时间:2018-05-25
《汇编语言程序格式课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、本章要求:①能够编写简单的、完整的汇编语言源程序。②掌握上机操作,以验证程序设计及编码的正确性。主要内容:汇编语言程序格式伪操作及操作符汇编语言程序的上机过程汇编程序功能第4章汇编语言程序格式1编辑程序.ASM文件汇编程序.OBJ文件连接程序.EXE文件Edit等MASMLINK1.汇编语言程序的建立及执行过程:在计算机上运行汇编语言程序的步骤是:用编辑程序(任何一种文本编辑程序)建立ASM文件;用MASM程序把ASM文件转换成OBJ文件;用LINK程序把OBJ文件转换成EXE文件;用D
2、OS命令直接键入文件名就可执行该程序;4.1汇编程序功能2程序运行步骤及生成的文件myfile.asmmyfile.crfotherfiles.objmyfile.lstmyfile.objmyfile.mapmyfile.exe编辑程序汇编程序连接程序MASM.EXEEDIT.COM、记事本LINK.EXE3建立,运行汇编语言程序C>EDITMYFILE.ASMC>MASMMYFILE.ASMMicrosoft(R)MacroAssemblerVersion5.10Copyright(C)Mi
3、crosoftCorp1981,1988.Allrightsreserved.Objectfilename[MYFILE.OBJ]:Sourcelisting[NUL.LST]:MYFILE.LSTCross-reference[NUL.CRF]:47962+413345Bytessymbolspacefree0WarningErrors0SevereErrorsC>LINKMYFILE.OBJMicrosoft(R)OverlayLinkerVersion3.64Copyright(C)Mic
4、rosoftCorp1983-1988.Allrightsreserved.RunFile[MYFILE.EXE]:ListFile[NUL.MAP]:Libraries[.LIB]:LINK:warningL4021:nostacksegmentC>MYFILE44.1汇编语言语句格式汇编语句:指令、伪指令、宏指令。每条指令语句都生成机器代码,各对应一种CPU操作,在程序运行时执行。伪指令语句由汇编程序在汇编过程中执行,数据定义语句分配存储空间,其他伪指令不生成目标码。宏指令是用户按照宏定义格
5、式编写的一段程序,可以包含指令、伪指令、甚至其他宏指令。54.1汇编语言语句格式标号指令寄存器说明程序或语句变量伪指令标号的功能子程序名宏指令变量常数表达式源程序的每条语句可表示为:[名字]助记符[操作数][;注释]标号/变量/子程序名:段值、偏移量、类型三种属性表达式:数字表达式地址表达式64.1.1名字项名字项可以是标号或变量、子程序名,它们都是用来表示本语句的符号地址。可以由26个大小写英文字母、0~9数字、_、$、@、?等字符组成,数字不能出现在名字的第一个字符位置。指令的名字叫做标号,
6、必须以冒号(:)结束。有三种属性,即段、偏移和类型。①段属性:标号和名字对应存储单元所在段的段地址。②偏移属性:标号和名字对应存储单元所在段的偏移地址。变量:在数据段或附加段中定义,后面不跟冒号。③类型属性:标号、子程序名的类型可以是NEAR(近)和FAR(远),分别表示段内或段间;变量名的类型可以是BYTE(字节)、WORD(字)和DWORD(双字)等。7标号:用来说明可执行指令在汇编语言程序中的位置,可作为转移指令或调用指令的操作数。标号的定义:(1)、定义距离属性为NEAR的标号(段内寻址
7、)1)、隐含声明:标号后加冒号,放在指令前例:L1:MOVAX,BX2)、显式声明:用LABEL伪指令显式声明或在EQU伪指令中用THIS操作符显式声明。例:LILABELNEARMOVCX,5L2EQUTHISNEARANDAX,0FFH(2)、定义距离属性为FAR的标号(段间寻址)显式声明:用LABEL伪指令显式声明或在EQU伪指令中用THIS操作符显式声明。例:LILABELFARMOVCX,5L2EQUTHISFARANDAX,0FFH8(3)、同一条指令前可以定义两个不同距离属性不同的
8、标号例:L4LABELFARL5:XORAX,0F0FH2、允许对标号进行操作的数值返回操作符(1)、SEG标号返回标号所在段的基址例:MOVAX,SEGL2(2)、OFFSET标号返回标号所在段的偏移地址例:MOVBX,OFFSETL2(3)、TYPE标号返回标号的属性NEAR或FAR94.1.2操作项操作项可以是指令、伪指令或宏指令助记符。对于指令,汇编程序将其翻译成机器指令,对于伪指令汇编程序将根据其所要求的功能进行处理。对于宏指令,则根据定义展开。104.1.3操作数项操作数项通常是由常
此文档下载收益归作者所有