预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共14页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

辽宁师范大学计算机与信息技术学院 综合性实验报告 课程名称:汇编语言 实验题目:菜单程序设计 学生姓名:孙蕾 专业:计算机科学与技术 学号:20101118050005 实验日期:2012.5.10 实验成绩: 实验目的 设计菜单程序,实现各种功能,设计分支程序,重键盘输入字符。 实验内容 (1)参考示例5-8设计菜单程序,包含示例5-2、示例5-3及退出三个菜单项。将示例5-2改为从键盘输入X;示例5-3增加显示功能,显示出统计个数。(P120、P101、P106) (2)选作:参考P213第9章示例9-3,在屏幕上清屏、开窗口,将菜单程序带颜色地显示在窗口中。提示:可利用P223宏库9-4.mac中的功能。 实验过程(含结果抓图) 1.输入程序代码 datasegment xdw? ydw? ccdb0ah,0dh,'Y=$' mess0db0ah,0dh,0dh,'****************MENU******************' db0ah,0dh,'*1.calculateY=5X-18:*' db0ah,0dh,'*2.countthenumbersofastring:*' db0ah,0dh,'*3.exit*' db0ah,0dh,'*^^pleaseselect...*' db0ah,0dh,'**************************************' db0ah,0dh,'$' mess1db0ah,0dh,0dh,'pleaseinputastring:$' cdb0ah,0dh,0dh,'pleaseinputanumber:$' mess2db0ah,0dh,'numb:$' mess3db0ah,0dh,'capi:$' mess4db0ah,0dh,'lett:$' mess5db0ah,0dh,0dh,'thankyouforusing!!$' numbdb10dup(?) capidb10dup(?) lettdb10dup(?) dataends codesegment assumecs:code,ds:data start: movax,data movds,ax let0:movdx,offsetmess0 movah,9 int21h movah,1 int21h cmpal,'1' jzprog1 cmpal,'2' jzprog2 jmpprog3 prog1: movax,data movds,ax movdx,offsetc movah,9 int21h inx: movah,1 int21h cmpal,30h jlinx cmpal,3Ah jnlinx subal,30h movah,0 movx,ax moval,5 imulx subax,18 jnsleta negax leta:movy,ax movcx,0 movbx,10 letb:movdx,0 inccx idivbx pushdx cmpax,0 jnzletb movdx,offsetcc movah,9 int21h letc:popax addax,0030h movdl,al movah,2 int21h deccx cmpcx,0 jnzletc jmplet0 prog2:movax,data movds,ax movdx,offsetmess1 movah,9 int21h let1:movah,1 int21h cmpal,0dh jzexit1 testal,40h jzlet2 testal,20h jzlet3 movlett[bx],al incbx jmplet1 let3:cmpal,5ah jaexit1 movcapi[si],al incsi jmplet1 let2:cmpal,'0' jbexit1 cmpal,'9' jaexit1 movnumb[di],al incdi jmplet1 exit1:movax,data movds,ax movdx,offsetmess2 movah,9 int21h adddi,30h movdx,di movah,2 int21h movdx,offsetmess3 movah,9 int21h addsi,30h movdx,si movah,2 int21h movdx,offsetmess4 movah,9 int21h addbx,30h movdx,bx movah,2 int21h jmplet0 prog3:movdx,offsetmess5 movah,9 int21h movah,4ch int21h codeends ends