《汇编语言程序设计》-2012

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

《汇编语言程序设计》实验书姓名:周雄武学号:1105100227专业班级:E+软件工程01软件工程教研室编写2012年8月实验一汇编语言程序设计入门(4学时)实验类别:基本实验实验目的:1、掌握汇编语言上机过程。2、掌握Debug命令的使用。3、利用Debug调试简单程序实验内容:1、预习教材第六章内容2、编写一个简单程序,功能自定3、编译、链接、运行程序4、利用debug调试程序实验步骤1、建立和修改源程序2、汇编、链接程序3、运行程序4、调试程序:使用常见调试命令实验要求1、实验过程记载:源程序、编译步骤、链接步骤、运行及结果、调试过程。2、实验报告:采用以下方式之一。(1)手写报告:完整实验过程、实验分析及总结(2)打印报告:可采用抓图方式记录过程,必须有实验分析及总结。实验二分支与循环程序设计(4学时)实验类别:基本实验实验目的:1、掌握分支程序设计方法。2、掌握循环程序设计方法。3、利用debug调试含有分支及循环结构的程序。实验内容:1、编写一个程序,显示AL寄存器中两位十六进制数。2、编写一个程序,判断键盘输入的字符:若是0~9,直接显示;若为A~Z或a~z,显示相应ASCII码;其它字符,显示“ERROR”。3、对双字变量DV中值为1的位进行统计,统计结果存入XN单元中,并显示出来。4、实现两个10字节数据相加,结果存入一个变量中,并显示结果。实验步骤1、分析题目要求2、画出流程图3、编写程序、静态检查、编译、运行、debug调试4、撰写实验报告实验要求1、实验过程记载:源程序、编译步骤、链接步骤、运行及结果、调试过程。2、实验报告:采用以下方式之一。(1)手写报告:完整实验过程、实验分析及总结(2)打印报告:可采用抓图方式记录过程,必须有实验分析及总结。3、实验报告中必须有流程图及程序清单第一题代码:CODESEGMENTASSUMECS:CODESTART:MOVAL,2BHMOVBL,ALMOVDL,ALMOVCL,4SHRDL,CLCMPDL,9JBEL1ADDDL,7L1:ADDDL,30HMOVAH,02HINT21HMOVDL,BLANDDL,0FHCMPDL,9JBEL2ADDDL,7L2:ADDDL,30HMOVAH,02HINT21HMOVAH,4CHINT21HCODEENDSENDSTART第二题代码:DATASEGMENTBUF1DBINPUTNUMBER$BUF2DBINPUTLETTER$BUF3DBERROR$DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAH,01INT21HCMPAL,30HJAEL1L2:CMPAL,41HJAEL3L4:CMPAL,61HJAEL5FIN:MOVAH,4CHINT21HL1:CMPAL,39HJBEPUT1JMPL2L3:CMPAL,5AHJBEPUT2JMPL4L5:CMPAL,7AHJBEPUT2JMPPUT3PUT1:MOVDX,OFFSETBUF1MOVAH,09HINT21HMOVDL,ALMOVAH,02HINT21HJMPFINPUT2:MOVDX,OFFSETBUF2MOVAH,09HINT21HMOVDL,ALMOVAH,02HINT21HJMPFINPUT3:MOVDX,OFFSETBUF3MOVAH,09HINT21HMOVBL,ALMOVCL,4SHRAL,CLADDAL,30HMOVDL,ALMOVAH,02HINT21HMOVAL,BLANDAL,0FHADDAL,30HMOVDL,ALMOVAH,02HINT21HMOVDL,'H'MOVAH,02HINT21HJMPFINCODEENDSENDSTART第三题代码:DATASEGMENTDVDD12345678HXNDB0DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAX,WORDPTRDVMOVDX,WORDPTRDV[2]MOVBL,XNMOVCX,16L3:SHLAX,1JNCAINCXNA:LOOPL3MOVCX,16L4:SHLDX,1JNCBINCXNB:LOOPL4MOVAL,XNMOVBL,ALMOVDL,ALMOVCL,4SHRDL,CLCMPDL,9JBEL1ADDDL,7L1:ADDDL,30HMOVAH,02HINT21HMOVDL,BLANDDL,0FHCMPDL,9JBEL2ADDDL,7L2:ADDDL,30HMOVAH,02HINT21HMOVAH,4CHINT21HCODEENDSENDSTART第四题代码:DATASEGMENTBUF1DB01H,02H,03H,04H,05H,06H,07H,08H,09H,0AHBUF2DB01H,02H,03H,04H,05H,06H,07H,08H,09H,0AHSUMDB00HDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXLEASI,BYTEPTRBUF1LEADI,BYTEPTRBUF2MOVCX,10A:MOVAL,[SI]MOVBL,[DI]ADDAL,BLADDSUM,ALADDSI,1ADDDI,1LOOPAMOVAL,SUMMOVBL,ALMOVDL,ALMOVCL,4SHRDL,CLCMPDL,9JBEL1ADDDL,7L1:ADDDL,30HMOVAH,02HINT21HMOVDL,BLANDDL,0FHCMPDL,9JBEL2ADDDL,7L2:ADDDL,30HMOVAH,02HINT21HMOVAH,4CHINT21HCODEENDSENDSTART实验三汇编语言综合设计(4学时)实验类别:综合实验实验目的:1、掌握子程序设计方法。2、掌握利用汇编语言解决实际问题。3、了解输入输出命令的使用。4、了解系统功能调用实验内容:从从键盘输入10个数,存入变量BUF中,将每个单元的数据以ASCII码形式显示出来:例如,某单元数据为18(12H),则显示31H(数字1的ASCII码)、32H(数字2的ASCII码)。要求:(1)输入10个数用子程序实现;(2)转换功能(二位16进制数转换为ASCII码)用子程序实现;(3)显示功能(显示各个ASCII码)用子程序实现。(4)主程序循环调用子程序实现转换和显示。DATASEGMENTBUFDB?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVCX,10A:CALLPRINTINCALLCHANGECALLSHOWLOOPAPRINTINPROCMOVAH,01INT21HMOVBUF,ALRETPRINTINENDPCHANGEPROCMOVAL,BYTEPTRBUFADDAL,30HMOVBUF,ALRETCHANGEENDPSHOWPROCMOVDL,BYTEPTRBUFMOVAH,02HINT21HRETSHOWENDPMOVAH,4CHINT21HCODEENDSENDSTART

1 / 12
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功