轻松汇编 百科内容来自于: 百度百科

作用简介

除了一般的功能外,它还针对汇编语言的特殊性和汇编语言初学者的特殊性,提供了一些专门针对汇编语言和专门针对汇编语言初学者的功能。例如:格式整理,当您写完一行程序,换行时,轻松汇编会自动先简单的检查该行语法,如无错误则整理该行的格式,使汇编程序格式整齐,具有如同艺术品一样的建筑美。而且在集成环境里,第二版增加了交叉文件和映像文件的自动读入功能,使初学者阅读交叉文件和映像文件更方便,有利于初学者养成良好的编程习惯和加深对汇编语言、机器语言的理解。

二,操 作 指 南

第一步 基本的编辑功能

这里是介绍基本的编辑功能,就像在介绍Windows自带的记事本。
新建:新建一个文件,快捷键为 Ctrl+N ;
保存:保存当前文件,快捷键为 Ctrl+S ;
打开:打开一个文件,快捷键为 Ctrl+O ;
退出:退出轻松汇编 ;
另存为: 把正在编辑的文件存为另外一个文件 ;
最近使用过的文件:在这里纪录了您最近使用过的文件,可以快速打开。如果
您不希望别人看到您编辑过什么程序,可以点击“清空全部纪录”。
全选:选定正在编辑的全部内容,快捷键为 Ctrl+A;
复制:复制选定的内容到剪贴板,快捷键为 Ctrl+C;
剪切:复制选定的内容到剪贴板,并删除所选定的内容,快捷键为 Ctrl+X;
粘贴:把剪贴板中的内容复制到编辑窗口,快捷键为 Ctrl+P;
删除:删除选定内容,快捷键为 Del;
撤消:撤消上一步操作,快捷键为 Ctrl+Z,但是注意只能撤消一次。
查找菜单:
查找:在所编辑的文件中查找字符串,快捷键为 Ctrl+F;
替换:在所编辑的文件中把一个字符串替换为另一个,快捷键为 Ctrl+R;
查找下一个:从当前光标起,查找下一个,快捷键为 F3;

第二步 编写一个汇编程序

编写第一个汇编程序。
打开轻松汇编就自动为您新建了一个模板,直接在上面添加数据定义和代码就可以了。  一般来说,都是先写堆栈段。输入“stacks segment stack”,用空格隔开关键字。然后按下回车键换行——您会看到,轻松汇编自动把刚才输入的那一行程序的格式整理好了。
第二行应该是堆栈的大小了,应该输入“db 128 dup(0)”,输入“bd 128 dup(0)”试试,会怎样?在换行时没有整理格式。如果您输入的汇编程序有拼写错误,轻松汇编会检测出来,并且拒绝整理错误行的格式,这时候您就可以避免这类简单而又隐蔽的错误。当然,如果您确定您输入的是正确的,而轻松汇编没有整理格式,或整理的格式不好看,请告诉我这个错误,不胜感激,联系方式见左侧小字。在您编程的过程中,左侧的导航栏会随时更新您的语法信息,可以通过导航栏来快速定位您的语法元素。
接着,把您所想要写的程序写完,进行下一步:编译、运行一个程序。
如果是以前写的程序,在轻松汇编中打开后,点击:运行-整理格式,轻松汇编会对整个程序格式进行整理。

第三步 编译、运行一个汇编程序

把您刚才写的那个汇编程序编译、运行一下,熟悉操作。
点击:运行-生成目标文件,轻松汇编就会自动生成目标文件,另外,根据您的设定(如何设定,请参见第四步),还会生成其他的文件。默认是生成交叉文件和映像文件,点击右上角的按钮就可以看到这两个文件(这两个文件的作用,请参见疑难解答)。
如果有语法错误,编译会失败,错误信息会显示在下面的窗口中,点击错误信息,错误行就会突出显示出来。
点击:运行-运行,轻松汇编就会会自动完成编译、链接、运行当前程序。在程序运行时是全屏方式,结束后变成窗口方式,不会退出。
点击:运行-调试,轻松汇编就会自动完成编译、链接、调试的工作,使用的是TD作为调试工具。
就这些了,因为在轻松汇编下编译、运行一个程序确实简单。
在汇编时还有其他的可能,那么,请进行第四步:让汇编变的更轻松。

第四步 让汇编变得更轻松

对轻松汇编进行个人设置,让它更符合您的习惯。
在轻松汇编中根据初学者的特点,提供了很有特色的功能,如果您不喜欢的话,可以关掉它,对于运行的参数,同样也是通过设置来改变的。下面我们一一介绍:
在设置窗体中:
格式设定:在这里的下拉框中有三个选项,全部大写、全部小写和不处理,
选定后的结果分别是在进行格式处理时对格式化结果的处理。
自动整理格式:选定后在换行的时候会对原来行进行格式整理,如果没有选定就不整理格式。
采用调试模式:选定后在编译时包括参数/zi,在链接时包括参数/v,这样生成的可执行文件比较大,包含了用TD调试时所需要的信息,可以实现源代码调试;如不选定,不能实现源代码调试,在调试的时候不太方便。推荐选定该选项。
编译生成Com文件:选定该选项后在链接时包括参数/t,如果你写的是一个com文件的汇编代码,那么就可以选定以生成一个com后缀的文件。在选定该选项后调试时不能实现源代码调试,所以最好在编写、调试的时候不选定,最后调试通过后再选定该选项生成com文件。如果不选定,即使是com文件的汇编代码也是可以编译通过,只不过生成的是一个Exe文件。推荐不选定。
自定义参数:就是自己提供TASM和TLink的参数了,如果你对TASM了解比较多,可以实现其他的参数功能,但是对于一般的学习者,并不需要自定义参数,以免造成程序运行时出问题。
程序格式:在这里控制格式整理的方式,您可以自己设置后看看效果。不过推荐用默认方式。
显示导航栏:选中后显示导航栏,否则不显示。
显示错误栏:选中后显示错误栏,否则不显示。推荐选中,因为不选中的话,有错误它也不会自动显示的。

三,疑 难 解 答

交叉文件和映像文件是什么

交叉文件和映像文件是编译过程和结果的详细显示。其中交叉文件是在第二遍扫描中建立的,映像文件是对可执行文件的说明,所以只有生成了可执行文件,才会有映像文件,但是只要不发生严重错误,就有交叉文件。
学会阅读交叉文件对于理解汇编原理更加重要,交叉文件说明如下:
1、编译后的机器代码和汇编语言的对应关系。
在交叉文件的主体部分,就是说明编译后的机器代码和汇编语言的对应关系的,分为三列,第一列是编译后机器代码在内存中的地址,第二列是编译后的机器代码,第三列就是你写的汇编语言和注释。要注意的是,在交叉文件中的数字全部都是用十六进制表示的,没有十进制表示的数字。
下面是一段交叉文件的原文:
000E B1 02 MOV CL,2 ;把2送到CL中
0010 F6 E9 IMUL CL ;CL中的数值和AL中数值相乘
0012 FE C0 INC AL ;AL中的数值加1
在第一列是对应指令在内存的地址,第一条指令“MOV CL,2”的起始地址是000E,占了两个字节(B1 02),所以第二条指令的起始地址是0010。
在第二列是编译后的机器指令,第一条指令“MOV CL,2”编译后的机器代码是“B1 02”,其中B1表示:1)是MOV指令;2)寻址方式立即数寻址;3)使用的是CL寄存器。02表示操作数是02H,十六进制数2。第二、三条指令也是以此类推,查看一下指令格式就可以了。编译后的可执行文件里写的就是第二列的内容,您可以用UlTra Edit等十六进制编辑器打开看一看。
第三列就是被编译的汇编指令
2.宏扩展情况。
在存在着宏扩展的部分,都用“1”标出,如下所示:
0024 E8 0035 CALL PINISET
MOUTPUT CLINE ;输出CLINE
0027 BA 0001 R 1 MOV DX,OFFSET CLINE
002A B4 09 1 MOV AH,09H
002C CD 21 1 INT 021H
在这段程序中,事先定义了宏MOUTPUT:
MOUTPUT MACRO PSTR ;输出PSTR
MOV DX,OFFSET PSTR
MOV AH,09H
INT 021H
ENDM
而CLINE是一个数据。
您可以看到,宏被扩展成的三条指令都用“1”标出来了。
3.错误列表。
在交叉文件的汇编语言的错误行的上面标出了错误原因、错误行、和错误类别,在交叉文件的最后,还列出了总的错误数。
4.段、子程序、宏、变量的清单。
在交叉文件的最后部分是对汇编程序中所有的段、子程序、宏、变量的清单,列出了它们的起始地址、值、类型等特征。
学会阅读交叉文件,可以对了解指令格式、编译原理有很大的帮助,而且通过阅读交叉文件,可以了解实际的宏扩展情况,有利于程序排错。

为什么语法错误的提示信息是乱七八糟

轻松汇编调用的是TASM 5.0作为内核编译汇编程序的,错误信息也是通过TASM 5.0来截获的。为了简便安装,把TASM 5.0功能实现所需要的最少的几个文件附带安装了,它们是TASM.Exe,TLink.Exe,TD.Exe,RTM.Exe。
其中,TASM.Exe的版本是4.1,TLink.Exe的版本是7.1.30.1。如果发生了上述情况,很可能是被替换成了不同的版本,您可以再其他地方拷贝一个相同版本的过来。或者重新安装轻松汇编。现在网上很多TASM5就是轻松汇编所调用的。

为什么运行结果和汇编源代码不一致呢

在有些情况下,会发生这种问题:修改了源代码以后再运行程序,运行的结果却是修改以前的,似乎修改的没有效果!
解决这个问题的办法是在修改源代码以后,都要先编译(Ctrl+F9),在编译通过后,再链接(F9),然后再运行或调试,否则修改就没有效果。
之所以会这样,是因为在轻松汇编中,编译只负责把汇编的源代码编译成目标文件(*.obj),而链接只负责把已有的目标文件链接成可执行文件(*.exe),而运行只负责运行已经存在的可执行文件,调试也只负责调试已经存在的可执行文件。这是符合在命令行下写汇编程序的规则的。
在这种情况下,如果你先打开一个汇编程序,第一次编译、链接、运行或调试,都很正常。接着,你修改了源代码,再运行,结果肯定是修改以前的,因为可执行文件还是按修改前的源代码生成的,链接一遍再运行,结果还是修改以前的,因为目标文件是按修改以前的源代码生成的,那由此生成的可执行文件自然也是按修改以前的代码生成的了。所以必须重新编译一遍再重新链接一遍,然后再运行或调试,就没问题了。

四,开发者介绍

作者:晨池,拉丁名:Cook,酷客.出生于河南省北部太行山区,后移于江汉平原,珠江三角洲,长江三角洲等地。毕业于武汉大学。
其软件是在大学期间完成的。
$firstVoiceSent
- 来自原声例句
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定