汇编实验报告DL.docx
- 文档编号:4175062
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:16
- 大小:231.82KB
汇编实验报告DL.docx
《汇编实验报告DL.docx》由会员分享,可在线阅读,更多相关《汇编实验报告DL.docx(16页珍藏版)》请在冰豆网上搜索。
汇编实验报告DL
实验1简单汇编语言程序设计
一、实验目的与要求
1.熟悉汇编语言运行、调试环境及方法。
2.掌握简单汇编语言程序的设计方法。
3.熟悉调试工具DEBUG,并运用DEBUG工具调试程序。
二、实验内容
1.若X、Y、R、W是存放8位带符号数字节单元的地址,Z是16位字单元的地址。
试编写汇编程序,完成
。
1.程序算法流程图。
2.源程序清单。
DATASEGMENT
XDB5;数据定义
YDB2
RDB2
WDB25
ZDW?
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX;段寄存器定义
MOVAL,W;开始计算
SUBAL,[X];W-X
CBW;将AL符号扩展为AH
MOVBL,5
IDIVBL;(W-X)/5
SUBAL,[Y]
MOVBL,R
ADDBL,2;R+2
IMULBL;最后的乘法运算
MOV[Z],AX;将最后的结果送给Z
MOVAH,4CH;返回DOS
INT21H
CODEENDS
3.程序运行结果。
2.试编写一个程序,测试某数是否是奇数。
如该数是奇数,则把DL的第0位置1,否则将该位置0。
1.程序算法流程图。
2.源程序清单。
DATASEGMENT
XDB9
YDB?
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
MOVAL,[X]
SHRDL,1
SHRAL,1
RCLDL,1
MOV[Y],DL
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
3.程序运行结果。
实验2分支及循环程序设计
一、实验目的与要求
1.熟悉汇编语言运行、调试环境及方法。
2.掌握分支程序和循环程序的设计方法。
3.熟悉调试工具DEBUG,并运用DEBUG工具调试程序。
二、实验内容
根据下列要求,编写汇编源程序,汇编连接汇编源程序,并利用DEBUG工具调试程序,验证程序的正确性。
1.键入一数,判断该数是否在0 1.程序算法流程图。 2.源程序清单 DATASEGMENT;数据段 XDW0;存放输入的数 DATAENDS CODESEGMENT ASSUMECS: CODE,DS: DATA START: MOVAX,DATA;将数据送入DS MOVDS,AX INPUT: MOVAH,1;输入字符 INT21H CMPAL,30H;比0小不接受 JBINPUT CMPAL,3AH;比9大不接受 JNBINPUT SUBAL,30H;将字符转换为整数 MOVAH,0 MOVX,AX;将输入的正数赋给X CALLENDL;换行 MOVAX,X CMPAX,3;和3比较 JBNT;比3小跳到NT CMPAX,7;和7比较 JANT;比7大跳到NT JMPIS;否则跳到IS IS: MOVBL,'0';在3-7之间,显示0 MOVDL,BL MOVAH,2 INT21H JMPEXIT;跳到EXIT NT: MOVBL,'-';不在3-7之间,显示-1 MOVDL,BL;先显示'-',再显示'1' MOVAH,2 INT21H MOVBL,'1' MOVDL,BL MOVAH,2 INT21H JMPEXIT;跳到EXIT EXIT: MOVAH,4CH;返回dos INT21H ;------------------------- ENDLPROC;换行子程序 MOVDL,13;回车换行 MOVAH,2 INT21H MOVDL,10 MOVAH,2 INT21H RET ENDLENDP ;--------------------------- CODEENDS ENDSTART 2.程序运行结果。 2.试编程统计数据区中正数、零和负数的个数。 1.程序算法流程图。 2.源程序清单。 DATASEGMENT BUFDB-1,-2,-3,-4,-11,0,11,22,32,112;定义一组数据 COUNTEQU$-BUF C1DB0;正数的个数 C2DB0;负数的个数 C3DB0;0的个数 DATAENDS CODESEGMENT ASSUMECS: CODE,DS: DATA START: MOVAX,DATA MOVDS,AX;将数据送入DS MOVSI,OFFSETBUF;BUF首地址地址传送给SI XORDH,DH;DI高位清零 MOVCX,COUNT;获取数据的个数,送给CX NEXT: MOVAL,[SI] CMPAL,0 JZL1;结果为零转移到L1 JGL2;结果大于零转移到L2 INCC2;将将负数的个数增加1 JMPSTO;跳转到STO L1: INCC3;将0的个数增加1 JMPSTO L2: INCC1;将正数的个数增加1 JMPSTO STO: INCSI;指针指向下一个数据 LOOPNEXT;直到CX为0结束 MOVDL,C1;输出正数的个数 ADDDL,30H MOVAH,02 INT21H MOVDL,C2;输出负数的个数 ADDDL,30H MOVAH,02 INT21H MOVDL,C3;输出0的个数 ADDDL,30H MOVAH,02 INT21H MOVAH,4CH;返回DOS INT21H CODEENDS ENDSTART 3.程序运行结果。 3.编程求无符号数字节序列中最大值和最小值。 1.程序算法流程图。 2.源程序清单。 DATASEGMENT NUMSDB21,1,33,55;定定义一组无符号的数 COUNTEQU$-NUMS;计算出数据的个数 MAXDB? ;存放最大值 MINDB? ;存放最小值 DATAENDS CODESEGMENT ASSUMECS: CODE,DS: DATA START: MOVAX,DATA MOVDS,AX;将数据送入DS MOVSI,OFFSETNUMS;NUMS首地址送给SI MOVCX,COUNT;将数据个数送给CX MOVAL,[SI] MOVMAX,AL;初始化 MOVMIN,AL INCSI BEGIN: MOVAL,[SI];开始通过下标取数 CMPAL,MAX;和最大数比较 JAMOREMAX;数据更大跳转到MOREMAX CMPAL,MIN;和最小的数比较 JBMOREMIN;数据更小跳转到MOREMIN JMPRE MOREMAX: MOVMAX,AL;将更大的数赋给MAX JMPRE MOREMIN: MOVMIN,AL;将更小的数赋给MIN JMPRE RE: INCSI;指针指向下一个数据T LOOPBEGIN;循环直到CX=0 MOVAL,MAX;输出最大值 MOVCL,04H SHRAL,CL MOVDL,AL ADDDL,30H MOVAH,02 INT21H MOVAL,MAX ANDAL,00FH MOVDL,AL ADDDL,30H MOVAH,02 INT21H MOVDL,20H;输出空格 MOVAH,02 INT21H MOVAL,MIN;输出最小值 MOVCL,04H SHRAL,CL MOVDL,AL ADDDL,30H MOVAH,02 INT21H MOVAL,MIN ANDAL,00FH MOVDL,AL ADDDL,30H MOVAH,02 INT21H MOVAH,4CH;返回DOS INT21H CODEENDS ENDSTART 4.程序运行结果。 4.编写汇编程序,统某存储区若干个数据中英文字母的个数,并将结果在屏幕上显示。 1.程序算法流程图。 2.源程序清单。 DATASEGMENT STRINGDB'g3tRfdtfTR34';定义一组字符串 COUNTEQU$-STRING;获得字符串的字符数 CHARCOUNTDB0;记录字母的个数 DATAENDS CODESEGMENT ASSUMECS: CODE,DS: DATA START: MOVAX,DATA;装载数据 MOVDS,AX MOVSI,OFFSETSTRING;STRING首地址送给SI MOVCX,COUNT;字符数COUNT送给CX BEGIN: MOVAL,[SI];开始通过下标取字符 CMPAL,'a'; JBCONTINUE;比a小时,转CONTINUN继续和A,Z比较 CMPAL,'z';比z小时 JARE INCCHARCOUNT;是小写字母,加1 JMPSHORTRE;无条件跳转 CONTINUE: CMPAL,'A';和A比较 JBRE; CMPAL,'Z';和Z比较 JARE; INCCHARCOUNT;是大写字母,也加1 RE: INCSI;取下一个字符 LOOPBEGIN;CX不为零时循环 MOVAL,CHARCOUNT ADDAL,30H;加30H得到ASCAII码 MOVDL,AL;将统计的字符个数显示出来 MOVAH,2 INT21H MOVAH,4CH;返回DOS INT21H CODEENDS ENDSTART 3.程序运行结果。 5.调试过程中遇到的问题和解决的方法。 这次调试通过参照实验指导书,了解到了汇编实验的基本操作流程,汇编作为计算机的一门基础语言所具有的优越性,在调试的过程中也遇到了许多的问题,比如在做循环的时候不能够画出流程图。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编 实验 报告 DL