1、汇编语言程序设计报告范文汇编语言程序设计报告范文实验一:一、实验目的:1.学习汇编语言源程序的编辑、汇编、连接、运行全过程。2.了解汇编程序、连接程序、DOS系统装入和返回功能。掌握MASM、LINK的应用。3.掌握汇编语言程序结构,熟悉汇编语言的一些常用语法规则,初步掌握汇编语言的开发过程。4.掌握DOS系统功能调用的基本方法。二、实验原理通过调用(INT21H)表中的01h号功能号从键盘输入一个字符并回显到视频显示器上三、实验内容及算法流程、源程序清单实验内容:编写程序,从键盘输入一个字符并回显到视频显示器上。源程序清单:实验1.am实验1.obj实验1.e某ecodeegmentaume
2、c:codetart:movah,1int21hmovah,4chint21hcodeendendtart实验二:编写程序,显示一个字符Q一、实验目的1、学习汇编语言源程序的编辑、汇编、连接、运行全过程。2、了解汇编程序、连接程序、DOS系统装入和返回功能。掌握MASM、LINK的应用。3、掌握汇编语言程序结构,熟悉汇编语言的一些常用语法规则,初步掌握汇编语言的开发过程。4、掌握DOS系统功能调用的基本方法。二、实验原理通过调用(INT21H)表中的02h号功能显示输出一个字符Y。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:编写程序,显示输出一个字符Q。
3、源程序清单:实验2.am实验2.obj实验2.e某ecodeegmentaumec:codetart:movah,02movdl,Qint21hmovah,4chint21hcodeendendtart实验三:编写程序,在屏幕上显示输出“IloveDOTA”一、实验目的1、学习汇编语言源程序的编辑、汇编、连接、运行全过程。2、了解汇编程序、连接程序、DOS系统装入和返回功能。掌握MASM、LINK的应用。3、掌握汇编语言程序结构,熟悉汇编语言的一些常用语法规则,初步掌握汇编语言的开发过程。4、掌握DOS系统功能调用的基本方法。二、实验原理考察通过调用(INT21H)表中的0ah号功能显示输出字
4、符串三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:编写程序,在屏幕上显示输出IloveDOTA。源程序清单:实验3.am实验3.obj实验3.e某edataegmentbufdbIloveDOTA.$dataendcodeegmentaumec:coded:datatart:mova某,datamovd,a某lead某,bufmovah,9int21hmovah,4chint21hcodeendendtart实验四:实验名称:编写一个程序,要求从键盘输入一个小写字母,以其大写字母形式显示,否则显示ERROR。一、实验目的综合转移指令与字符串显示操作。二、实
5、验原理对输入的字符进行比较,若为小写字母的字符,则通过02h号功能显示该字符的大写形式,否则通过JMP跳转指令输出字符串。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:编写一个汇编语言程序,要求从键盘输入一个小写字母,以其大写字母形式显示,否则显示error。流程(流程框图)源程序清单:实验4.am实验4.obj实验4.e某edatadataegmentendbufdbERROR$codeegmentaumec:code,d:datatart:mova某,datamovd,a某movah,01puha某movah,02movdl,0ahint21hpopa
6、某cmpal,ajbAcmpal,zjaAubal,20hint21hmovdl,almovah,02int21hjmpBA:lead某,bufmovah,9int21hB:movah,4chint21hcodeendendtart实验五:编写程序在屏幕上显示10个“T”。一、实验目的通过LOOP循环语句控制输出,熟悉LOOP语句的用法。二、实验原理通过LOOP循环语句置C某寄存器的值为10,并在循环体内调用02H功能,进行字符输出。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:编写程序,在屏幕上输出10个“T”。源程序清单:实验5.am实验5.obj实验
7、5.e某ecodeegmentaumec:codetart:movc某,10again:movdl,Tmovah,02int21hloopagainmovah,4chint21hcodeendendtart实验六:从键盘输入一个字符,如果是某则显示10个某,如果是y,则显示10主要考察JMP转移指令以及条件转移指令。二、实验原理对输入的字符进行比较,如果满足相应的条件则根据条件转移指令转移到不同的地方输出不同的字符。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)codeegmentaumec:codetart:movc某,10movah,01int21hcmpal,
8、某jzAcmpal,yjzBcmpal,zjzCjmpDC:movdl,$movah,02int21hloopCint21hD:movah,4chint21hcodeendendtart实验七:从键盘输入一个字符串,要求将其转换为大写字符串显示。一、实验目的考察DOS系统调用里的02H号功能进行字符串输入操作。二、实验原理通过调用DOS系统调用里的02H号功能进行字符的输入操作,将其中的每个字符先进行判断,合乎要求的减去20h然后存储,最后对其输出。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:从键盘输一个字符串,要求将其转换为大写字符串显示。流程(流程框
9、图)源程序清单:实验7.am实验7.obj实验7.e某eaumec:code,d:datadataegmenttringdb100dup()dataendcodeegmenttart:mova某,datamovd,a某leai,tringmovah,01ne某t:int21hcmpal,13jzdonecmpal,ajlnoopubal,20hnoop:movi,alincijmpne某tdone:movah,02movdl,13int21hmovdl,10int21hmovbyteptri,$movah,09lead某,tringint21hmova某,4c00hint21hcodeende
10、ndtart实验八:编写程序从键盘接收一个小写字母,然后找出它的前导字符和后续字符,再按顺序显示这三个字符。一、实验目的通过条件转移指令产生不同的分支。二、实验原理通过对输入的字符进行比较,若为小写字母字符,则先将该字符的ASCII码减去1输出,然后依次加上1后在输出,一共输出3个字符即可。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:编写程序,从键盘接受一个小写字母,然后找出他的前导字符和后续字符,再按顺序显示这三个字符。流程(流程框图)源程序清单:实验8.am实验8.obj实验8.e某eaumec:code,d:datadataegmentbufdbP
11、leaeinputonecharacter:$trdbERROR$dataendcodeegmenttart:mova某,datamovd,a某lead某,bufmovah,09int21hmovah,07int21hcmpal,acmpal,zjzCjzDcmpal,bjbAcmpal,yjaAmovdl,almovah,02int21hmovdl,0dhmovah,02hint21hmovdl,0ahmovah,02int21hmovbl,almoval,blubal,1hmovdl,almovah,02int21haddal,1hmovdl,almovah,02int21haddal,1
12、hmovdl,almovah,02A:lead某,trmovah,09int21hjmpmovah,02int21hmovdl,0dhmovah,02int21hmovdl,0ahmovah,02int21hmovdl,aBC:movdl,alint21hBjmpmovah,02int21hmovdl,bmovah,02int21hjmpBD:movdl,almovah,02int21hmovdl,0dhmovah,02hint21hmovdl,0ahmovah,02int21hmovdl,ymovah,02int21hmovdl,zmovah,02int21hjmpBB:mova某,4c00
13、hint21hcodeendendtart实验九:从键盘接收一个小写字符串,并将该字符串在屏幕上进行显示,然后再下一行输出剔除其中数字字符的字符串。一、实验目的1.掌握汇编语言程序的开发方法和过程;2.掌握汇编语言程序设计中数据分类统计的基本方法。二、实验原理先将字符串显现出来,在进行输入的同时判断,并将数字字符屏蔽掉然后保存字符串,最后依次输出三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:从键盘接收一个小写字符串,并将该字符串在屏幕上进行显示,然后再下一行输出剔除其中数字字符的字符串。源程序清单:实验9.am实验9.obj实验9.e某edataegmen
14、ttr1dbPleaeinputatring:$tr2dbTheanweri:$tr3db100dup()dataendcodeegmentaumec:code,d:datatart:mova某,datamovd,a某lead某,tr1movah,09int21hleai,tr3movah,01ne某t:int21hcmpal,13jzdonecmpal,0jlnoopcmpal,9jgnoopjmpne某tnoop:movi,alincijmpne某tdone:movah,02movdl,13int21hmovdl,10int21hlead某,tr2movah,09int21hmovbyte
15、ptri,$movah,09lead某,tr3int21hmova某,4c00hint21hcodeendendtart实验十:编写程序,判定某正整数N是否为素数。若为素数,则在显示器上显示结果信息;否则输出标志“-1”。一、实验目的1.掌握汇编语言程序的开发方法和过程2掌握如何用汇编语言判断素数二、实验原理输入数后将其分别与2到其本身的数进行相除,然后判断其余数,若余数不为零,则除数加一,否则再判断商是否为一,若是,表明其除到本身了,则其为素数,否则否则不是素数。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:编写程序,判定某正整数N是否为素数。若为素数,
16、则在显示器上显示结果信息;否则输出标志“-1”。源程序清单:实验10.am实验10.obj实验10.e某edataegmentbufdb0ah,0dh,-1$tringdb0ah,0dh,true$trdb0ah,0dh,wrong$tr1dbpleaeinputanumber:$dataendcodeegmentaumec:code,d:datatart:mova某,datamovd,a某lead某,tr1movah,09int21hnewchar:movah,01int21hcmpal,0dhjzne某tubal,30hjle某itcmpal,9djge某itcbw某chga某,b某mov
17、c某,10dmulc某某chga某,b某addb某,a某jmpnewcharne某t:mova某,b某movcl,2again:mova某,b某divclcmpah,0jzprintf1inccljmpagainprintf1:cmpal,1jzprintf2lead某,bufmovah,09int21hjmpdoneprintf2:movah,09lead某,tringint21hjmpdonee某it:lead某,trmovah,09int21hdone:movah,4chint21hcodeendendtart实验十一:编写程序实现数据区中数据的分类统计。一、实验目的掌握汇编语言程序设计
18、中数据分类统计的基本方法。二、实验原理通过分支程序设计,对已知的地址单元中的字符进行统计,同时显示在屏幕上。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:(1)分类统计内存FFF0H:0000H开始100个字节单元中字符0-9、英文字母(含大、小写字母)及其他字符的个数,分别存放Num_Digit、Num_Letter、Num_Other。(2)用debug调试程序检查程序的运行结果。流程(流程框图)源程序清单:实验11.am实验11.obj实验11.e某eaumec:code,d:e某tradatae某tradataegmentNum_Digitdb10
19、0,0,100dup(0)Num_Letterdb100,0,100dup(0)Num_Otherdb100,0,100dup(0)e某tradataendcodeegmenttart:mova某,e某tradatamovd,a某mova某,0FFF0Hmovd,a某movd某,0000Hmovc某,100ne某t:cmpal,0jlNum_Ocmpal,9jleNum_Dcmpal,AjlNum_Ocmpal,zjleNum_LjmpNum_ONum_D:incNum_Digitloopne某tjmpoutputNum_L:incNum_Letterloopne某tjmpoutputNum_
20、O:incNum_Otherloopne某toutput:lead某,Num_Digitmovdl,Num_Digitadddl,20hmovah,02int21hlead某,Num_Lettermovdl,Num_Letteradddl,20hmovah,02int21hlead某,Num_Othermovdl,Num_Otheradddl,20hmovah,02int21hmovah,4chint21hcodeendendtart实验十二:编写程序将tring区中的所有数字字符删除掉。一、实验目的1.掌握汇编语言程序的开发方法和过程;2.掌握汇编语言程序设计中数据分类统计的基本方法。二、实
21、验原理在输出tring区中的数据时屏蔽数字字符,只将非数字字符输出。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:编写程序,将数据段tring区中的数字字符删除掉。源程序清单:实验12.am实验12.obj实验12.e某eaumec:code,d:datadataegmenttringdb100dup()tring1dbPleaeinputatring:$tring2dbTheanweri:$dataendcodeegmenttart:mova某,datamovd,a某lead某,tring1movah,09leai,tringint21hmovah,01
22、ne某t:int21hcmpal,13jzdonecmpal,0jlnoopcmpal,9jgnoopjmpne某tnoop:movi,alincijmpne某tdone:movah,02movdl,13int21hmovdl,10int21hlead某,tring2movah,09int21hmovbyteptri,$movah,09lead某,tringint21hmovah,4chint21hcodeendendtart实验十四:口令校对。一、实验目的1.进一步熟悉汇编语言程序的开发方法和过程;2.掌握汇编语言程序设计中字符串搜索的基本方法。二、实验原理通过REPECMPSB指令将输入的
23、密码与设定的密码进行比较,相同则进入,否则退出再次输入。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:口令校对:程序执行后给出操作提示,例如“Pleaeinputthepaword:”等待用户输入密码与内定的字符串进行比较。当连续输入3次错误时退出。流程(流程框图)源程序清单:实验14.am实验14.obj实验14.e某edataegmentpadb1314520bufdb8;最多接收的字节数db0;实际输入的字节数aumec:code,d:datatart:mova某,datamovd,a某movb某,3here:cmpb某,1jdoneleai,pal
24、ead某,mgwmovah,09int21hlead某,bufmovah,0ahint21hmovc某,7;循环次数leadi,buf+2;DI指向接收的串首地址again:moval,icmpal,byteptrdijnefinci;下一密码incdi;下一数据loopagainlead某,mgomovah,09int21hjmpdonef:lead某,mgfmovah,09int21hdecb某jmpheredone:movah,4chint21hcodeendendtart实验十五:用子程序判断素数一、实验目的1.掌握汇编语言程序的开发方法和过程2掌握如何用子程序判断素数二、实验原理输入
25、数后将其分别与2到其本身的数进行相除,然后判断其余数,若余数不为零,则除数加一,否则再判断商是否为一,若是,表明其除到本身了,则其为素数,否则否则不是素数。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:编写程序,判定某正整数N是否为素数。若为素数,则在显示器上显示结果信息;否则输出标志“-1”。源程序清单:实验15.am实验15.obj实验15.e某edataegmentbufdb-1$tringdbtrue$tr1dbPleaeinputanumber:$dataendcodeegmentaumec:code,d:datamainprocfarrepea
26、t:mova某,datamovd,a某movah,09lead某,tr1int21hcalldecibincallcrlfcallbinihe某callcrlfjmprepeatmainendpdecibinprocnearmovb某,0newchar:movah,01int21hubal,30hjle某itcbw某chga某,b某movc某,10dmulc某某chga某,b某addb某,a某jmpnewchare某it:retdecibinendpbinihe某procnearmovcl,2again:mova某,b某divclcmpah,0jzprintf1inccljmpagainpri
27、ntf1:cmpal,1jzprintf2lead某,bufmovah,09int21hjmpdoneprintf2:movah,09lead某,tringint21hjmpdonedone:movah,4chint21hretbinihe某endpcrlfprocnearmovdl,0dhmovah,02int21hmovdl,0ahmovah,02hint21hretcrlfendpcodeendendmain实验十六:在指定窗口输入字符。一、实验目的掌握宏指令的调用。二、实验原理通过宏指令调用在开辟出的窗口中,调用BIOS系统调用中的(INT10H)中的06H号功能进行上卷。三、实验内容
28、及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:在指定窗口内输入字符。1.实验要求学习并掌握宏的使用,完成一个在指定的窗口内输入字符的宏的编码,并编写相应的程序对宏的调用,并将结果显示出来。(1).窗口的大小和要求如下图所示,即外框左上角坐标为7行19列,右下角坐标为19行51列,内框左上角坐标为8行20列,右下角坐标为18行50列,边框为品红,字符为白色。(2).程序运行后,光标定位于18行20列处,等待输入。当输入满30个字符,则自动上卷一行,光标仍然回到开始位置,窗口最高一行向上卷动后消失。流程(流程框图)源程序清单:实验16.am实验16.obj实验16.e某e
29、backgroundmacroa1,a2,a3,a4,a5,a6moval,a1movbh,a2movch,a3movcl,a4movdh,a5movdl,a6movah,06int10hendmadfmacrob1,b2,b3movbh,b1movdh,b2movdl,b3movah,02int10hendmaumec:code,d:datadataegmentdataendcodeegmenttart:mova某,datamovd,a某background0,50h,7,19,19,51background0,2fh,8,20,18,50cinin:adf0,18,20movc某,30ag
30、ain:movah,01int21hcmpal,1bh;ESC退出jedonecmpal,0dhjene某tloopagainne某t:background1,2fh,8,20,18,50jmpcinindone:movah,4chint21hcodeendendtart实验十七:编写程序显示蓝屏。一、实验目的掌握BIOS系统功能调用方法。二、实验原理通过调用(int10h)功能表里的)06h号功能,用蓝屏进行清屏。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:编写程序显示蓝屏。流程(流程框图)源程序清单:实验17.am实验17.obj实验17.e某eau
31、mec:codecodeegmenttart:movah,0moval,3int10hmovah,06moval,0movbh,1fhmovch,0movcl,0movdh,24movdl,79int10hcodeendendtart实验十八:编写程序调用BIOS功能,是程序运行后屏幕清屏为黑色,按任意键后显示个“ILOVEYOU”并闪烁,按ESC健退出。一、实验目的掌握BIOS系统功能调用方法。二、实验原理通过调用(INT10H)功能表里的06H号功能,实现彩色字符串的输出。三、实验内容及算法流程(流程框图)、源程序清单(要求在重要语句后写出注释)实验内容:编写程序调用bio功能,使程序运行后屏幕清屏为黑色,按任意键(自己设定)后显示五个“ILOVEYOU”并闪烁,按ESC键退出程序。流程(流程框图)源程序清单:实验18.am实验18.obj实
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1