北邮—微原软件实验报告

北邮—微原软件实验报告

ID:35215432

大小:178.03 KB

页数:18页

时间:2019-03-21

北邮—微原软件实验报告_第1页
北邮—微原软件实验报告_第2页
北邮—微原软件实验报告_第3页
北邮—微原软件实验报告_第4页
北邮—微原软件实验报告_第5页
资源描述:

《北邮—微原软件实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、微机原理软件实验报告学院:信息与通信工程学院班级:班内序号:姓名:学号:实验二分支,循环程序设计一.实验目的:1.开始独立进行汇编语言程序设计;2.掌握基本分支,循环程序设计;3.掌握最简单的DOS功能调用.二.实验内容:1.安排一个数据区(数据段),内存有若干个正数,负数和零.每类数的个数都不超过9.2.编写一个程序统计数据区中正数,负数和零的个数.3.将统计结果在屏幕上显示.三.预习题:1.十进制数0--9所对应的ASCII码是什么?如何将十进制数0--9在屏幕上显示出来?答:0—9对应的ASCII码是3

2、0H—39H;在屏幕上显示0—9,需要将对应字符的ASCII码赋给DL,并进行DOS的2号功能调用,0—9的ASCII码正是其本身的数值加上30H。2.如何检验一个数为正,为负或为零?你能举出多少种不同的方法?答:①用CMP命令和0比较,如果ZF为1,则该数为零;再用该数和8000H相与,取出符号位判断,可区分正负;②用CMP命令和0比较,结果不小于0时用JGE命令进行跳转,否则为负数;用JGE命令跳转后,如果为0再用JZ命令跳转,否则为正数。四.选作题:统计出正奇数,正偶数,负奇数,负偶数以及零的个数.五.

3、实验过程1.流程图2.源代码DATASEGMENTNUMDW0,0,1,2,3,4,5,101,-6,-7,-8,-8,-9;有2个0,6个正数,5个负数NDW($-NUM)/2;该组数据的个数ZDB0;0的个数PDB0;正数的个数PODB0;正奇数的个数PEDB0;正偶数的个数MDB0;负数的个数MODB0;负奇数的个数MEDB0;负偶数的个数STR0DB'numberofzeros:$';STR0-4为用于显示的字符串STR1DB0DH,0AH,'numberofpositivenumbers:$'STR

4、2DB0DH,0AH,'numberofnegativenumbers:$'STR3DB0DH,0AH,'odd:$'STR4DB'even:$'DATAENDSSTACKSEGMENTSTACKDW100DUP(?)STACKENDSCODESEGMENTASSUMEDS:DATA,SS:STACK,CS:CODESTART:MOVAX,DATAMOVDS,AXMOVAX,STACKMOVSS,AX;初始化DS、SSLEABX,NUM;将NUM中第一个数字的地址送入BXMOVCX,N;将数据个数送入CXAG

5、AIN:MOVAX,[BX];取出NUM中的第一个数字CMPAX,0;和0比较JGEPLU;大于等于0时转PLUINCM;负数的个数加1TESTAX,1;检测该数据最低位是否为1,即是否为负奇数JNZMINODD;ZF为0时转MINODD,该数为负奇数INCME;负偶数个数加1JMPNEXTMINODD:INCMO;负奇数个数加1JMPNEXTPLU:JZZER;等于0时转ZERINCP;正数个数加1TESTAX,1;检测该数据最低位是否为1,即是否为正奇数JNZPLUODD;ZF为0时转PLUODD,该数为

6、正奇数INCPE;正偶数个数加1JMPNEXTPLUODD:INCPO;正奇数个数加1JMPNEXTZER:INCZ;零的个数加1NEXT:ADDBX,2;偏移地址加2,指向下一数字LOOPAGAIN;CX自减,CX≠0时继续循环DISPLAY:;在屏幕上显示统计结果MOVAH,09H;9号功能调用,显示字符串MOVDX,OFFSETSTR0;将字符串的首地址的偏移地址送到DX,DS已;是其段基址INT21HMOVAH,02H;2号功能调用,显示单个字符MOVDL,Z;将零的个数送到DLADDDL,30H;0

7、—9数字本身加上30H即为其ASCII码INT21HMOVAH,09H;正数部分统计结果显示,原理同上MOVDX,OFFSETSTR1INT21HMOVAH,02HMOVDL,PADDDL,30HINT21HMOVAH,09HMOVDX,OFFSETSTR3INT21HMOVAH,02HMOVDL,POADDDL,30HINT21HMOVAH,09HMOVDX,OFFSETSTR4INT21HMOVAH,02HMOVDL,PEADDDL,30HINT21HMOVAH,09H;负数部分统计结果显示,原理同上MO

8、VDX,OFFSETSTR2INT21HMOVAH,02HMOVDL,MADDDL,30HINT21HMOVAH,09HMOVDX,OFFSETSTR3INT21HMOVAH,02HMOVDL,MOADDDL,30HINT21HMOVAH,09HMOVDX,OFFSETSTR4INT21HMOVAH,02HMOVDL,MEADDDL,30HINT21HMOVAX,4C00H;返回DOSINT21HC

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

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

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