实验十一综合程序设计

实验十一综合程序设计

ID:40932947

大小:61.00 KB

页数:6页

时间:2019-08-11

实验十一综合程序设计_第1页
实验十一综合程序设计_第2页
实验十一综合程序设计_第3页
实验十一综合程序设计_第4页
实验十一综合程序设计_第5页
资源描述:

《实验十一综合程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验十一综合程序设计一、实验目的:巩固循环,分支,子程序等程序设计方法。全面了解汇编语言的程序设计和调试方法调试并查看.lst列表文件。二、实验内容:编写一个程序,接收从键盘输入的10个数字字符,输入回车符则停止输入,然后将这些数字加密后(用XLAT指令变换)存入内存缓冲区BUFFER。加密表为:输入数字:0,1,2,3,4,5,6,7,8,9密码数字:7,5,9,1,3,6,8,0,2,4三.实验设备:IBMPC机,DOS或WINDOWS,MASM5。0程序,LINK程序四.实验原理:采用子程序结构完成数字的输入,并将其转换为二进制数,采用查表实现加密过程。

2、程序主要部分如下:mainInputoutputdecibincrlfoutmessg模块层次图inputmaininputoutput结束提示输入数字(outmess,crlf)初始化循环计数器循环计数器+1!=10接收一个数字字符(decibin)存入数组indata是数字?Crlf显示换行符显示回车还回是回车?显示出错(outmess,crlf))返回decibinYNoutput初始化数组初始化表值加密转换修改地址和计数器循环结束返回接收数字字符字符转换为二进制数值<0?出错返回YYN>9?N正常返回1、过程名:main为总控模块输入:用户从键盘输入1

3、0个十进制数字输出参数:将数字加密后保存到内存缓冲区BUFFER。功能:根据输入的数字和加密表完成数据加密。采用(XLAT指令变换)2、过程名:input输入:从键盘输入10个数字字符,以回车符结束。输出参数:把输入的数字字符转换成数值后存入indata数组中。功能:接受输入的十进制数字字符。调用子模块decibin把输入的数字字符转换为二进制数值。调用子模块crlf完成回车换行功能。3、过程名:output输入参数:从indata数组中取得数值。输出参数:把数值加密后存到缓冲区BUFFER中功能:读取数字,完成加密转换,将结果保存到BUFFER中。4、过程名

4、:decibin输入:从键盘取得一个数字字符。输出参数:SZBJ,表示用户输入的字符是否为数字;AL把该数字字符转换为二进制数值放到ALDL,用户输入的字符ASCII码功能:把从键盘取得的一个十进制数转换为二进制数,并存于al中。5、过程名:crlf输出:向终端发出回车、换行符。功能:完成一次回车、换行操作。6、过程名:outmess输入参数:将字符串首地址放到DX中输出:完成字符串的屏幕显示。功能:实现提示信息的输出。五、实验过程1.编辑程序代码datasegsegmentindatadb10dup(?)arraydb7,5,9,1,3,6,8,0,2,4b

5、ufferdb10dup(?)messg1db'Inputnumber:','$'messg2db'programovernormally!','$'messg3db'Inputcharactererror,pleaseinputagain!','$'SZBJdb?datasegendsstacksegsegmentdw100dup(?)toslabelwordstacksegendscodesegsegmentmainprocfarassumecs:codeseg,ds:dataseg;,ss:stacksegstart:pushdssubax,axpush

6、axmovax,dataseg;设置DS指向dataseg段movds,axmovax,stacksegmovss,axmovsp,offsettoscallinput;调用子过程inputcalloutput;调用子过程outputmovax,4c00hint21hmainendpinputprocnearleadx,messg1;输出提示信息;movdx,offsetmessg1calloutmessgleasi,indata;置输入数据地址初值movcx,0enter:calldecibin;调用子过程cmpSZBJ,1;确定是否输入有效数字jestor

7、e;有效数字保存cmpdl,13;非有效数字时判定是否是回车符jecrect;是回车符则退出jneerror;既不是有效数字又不是回车符则报错store:mov[si],al;将输入的数据送indata缓冲区incsi;修改缓冲区地址inccxcmpcx,10jneenter;是则转到提示信息jmpcrect;循环输入error:callcrlf;回车换行leadx,messg3;以下为显示错误信息calloutmessgjmpexitcrect:callcrlf;显示正确输入信息leadx,messg2calloutmessgexit:retinputend

8、pdecibinprocnearmov

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。