电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

北邮-微原软件实验报告

18页
  • 卖家[上传人]:桔****
  • 文档编号:489519924
  • 上传时间:2023-08-12
  • 文档格式:DOCX
  • 文档大小:138.23KB
  • / 18 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、微机原理软件实验报告学院:信息与通信工程学院班级: 班内序号: 姓名: 学号: 实验二 分支,循环程序设计一.实验目的: 1.开始独立进行汇编语言程序设计; 2.掌握基本分支,循环程序设计; 3.掌握最简单的 DOS 功能调用.二.实验内容: 1.安排一个数据区(数据段),内存有若干个正数,负数和零.每类数的个数都不超过 9. 2.编写一个程序统计数据区中正数,负数和零的个数. 3.将统计结果在屏幕上显示.三.预习题: 1.十进制数 0 - 9 所对应的 ASCII 码是什么? 如何将十进制数 0 - 9 在屏幕上显示出来? 答:09对应的ASCII 码是30H39H;在屏幕上显示09,需要将对应字符的ASCII 码赋给DL,并进行DOS的2号功能调用,09的ASCII 码正是其本身的数值加上30H。2.如何检验一个数为正,为负或为零? 你能举出多少种不同的方法?答:用CMP命令和0比较,如果ZF为1,则该数为零;再用该数和8000H相与,取出符号位判断,可区分正负;用CMP命令和0比较,结果不小于0时用JGE命令进行跳转,否则为负数;用JGE命令跳转后,如果为0再用JZ命令跳转,否则

      2、为正数。四.选作题:统计出正奇数,正偶数,负奇数,负偶数以及零的个数.五.实验过程1.流程图2.源代码DATA SEGMENT NUM DW 0,0,1,2,3,4,5,101,-6,-7,-8,-8,-9 ;有2个0,6 个正数,5 个负数 N DW ($-NUM)/2 ;该组数据的个数 Z DB 0 ;0 的个数 P DB 0 ;正数的个数 PO DB 0 ;正奇数的个数 PE DB 0 ;正偶数的个数 M DB 0 ;负数的个数 MO DB 0 ;负奇数的个数 ME DB 0 ;负偶数的个数STR0 DB number of zeros : $ ;STR0-4为用于显示的字符串STR1 DB 0DH, 0AH, number of positive numbers : $ STR2 DB 0DH, 0AH, number of negative numbers : $STR3 DB 0DH, 0AH, odd : $STR4 DB even : $ DATA ENDSSTACK SEGMENT STACK DW 100 DUP(?) STACK ENDSCODE SEGMENT

      3、ASSUME DS:DATA, SS:STACK, CS:CODE START: MOV AX, DATA MOV DS, AX MOV AX, STACK MOV SS, AX ;初始化 DS、SS LEA BX, NUM ;将 NUM 中第一个数字的地址送入 BX MOV CX, N ;将数据个数送入 CX AGAIN: MOV AX, BX ;取出 NUM 中的第一个数字 CMP AX, 0 ;和0比较 JGE PLU ;大于等于0时转PLU INC M ;负数的个数加1 TEST AX, 1 ;检测该数据最低位是否为1,即是否为负奇数 JNZ MINODD ;ZF为0时转MINODD,该数为负奇数 INC ME ;负偶数个数加1 JMP NEXTMINODD: INC MO ;负奇数个数加1 JMP NEXT PLU: JZ ZER ;等于0时转ZER INC P ;正数个数加1 TEST AX, 1 ;检测该数据最低位是否为1,即是否为正奇数 JNZ PLUODD ;ZF为0时转PLUODD,该数为正奇数 INC PE ;正偶数个数加1 JMP NEXTPLUODD: INC

      4、 PO ;正奇数个数加1 JMP NEXTZER: INC Z ;零的个数加1NEXT: ADD BX,2 ;偏移地址加2,指向下一数字 LOOP AGAIN ;CX自减,CX0时继续循环DISPLAY: ;在屏幕上显示统计结果MOV AH, 09H ;9号功能调用,显示字符串 MOV DX, OFFSET STR0 ;将字符串的首地址的偏移地址送到DX,DS已;是其段基址 INT 21H MOV AH, 02H ;2号功能调用,显示单个字符 MOV DL, Z ;将零的个数送到DL ADD DL, 30H ;09数字本身加上30H即为其ASCII 码 INT 21H MOV AH, 09H ;正数部分统计结果显示,原理同上 MOV DX, OFFSET STR1 INT 21H MOV AH, 02H MOV DL, P ADD DL, 30H INT 21H MOV AH, 09H MOV DX, OFFSET STR3 INT 21H MOV AH, 02H MOV DL, PO ADD DL, 30H INT 21H MOV AH, 09H MOV DX, OFFSET STR

      5、4 INT 21H MOV AH, 02H MOV DL, PE ADD DL, 30H INT 21H MOV AH, 09H ;负数部分统计结果显示,原理同上 MOV DX, OFFSET STR2 INT 21H MOV AH, 02H MOV DL, M ADD DL, 30H INT 21H MOV AH, 09H MOV DX, OFFSET STR3 INT 21H MOV AH, 02H MOV DL, MO ADD DL, 30H INT 21H MOV AH, 09H MOV DX, OFFSET STR4 INT 21H MOV AH, 02H MOV DL, ME ADD DL, 30H INT 21H MOV AX, 4C00H ;返回DOS INT 21H CODE ENDS END START 3.运行结果数据为:0,0,1,2,3,4,5,101,-6,-7,-8,-8,-9运行结果:zero表示零的个数,为2;positive number表示正数的个数,为6,其中奇数odd为4个,偶数even为2个;negative number表示负数的个数,为5

      6、,其中奇数odd为2个,偶数even为3个。与数据对比,可知输出结果正确。实验三 代码转换程序设计一.实验目的: 1.掌握几种最基本的代码转换方法; 2.运用子程序进行程序设计.二.实验内容: 1.从键盘上输入若干两位十进制数,寻找其中的最小值,然后在屏幕上显示出来. 2.两个十进制数之间的分隔符,输入结束标志自定,但要在报告中说明. 3.对输入要有检错措施,以防止非法字符输入,并有适当的提示. 4.将整个程序分解为若干模块,分别用子程序实现.在报告中要给出模块层次图.三.预习题: 1.如何将输入的两个字符(0 - 9)变为十进制或二进制数? 答:输入的字符是ASCII码,将其ASCII码减去30H后即为其实际数值;若需将两个字符变为一个两位十进制或二进制数,可将第一个字符ASCII码减去30H后的数乘以10,再和第二个字符ASCII码减去30H后的数相加。 2.如何将选出的最小值(二进制或十进制)变为 ASCII 码再进行显示? 答:将最小值除以10,得到的商为其十位上的数字,余数为其个位上的数字,分别加上30H即为其对应的ASCII码,再进行DOS的2号功能调用进行显示。 3.你觉得采用二进制运算还是十进制运算更适合于这个实验? 答:二进制,因为机器语言就是二进制,使用起来会更方便。四.实验过程1.流程图2.模块划分

      《北邮-微原软件实验报告》由会员桔****分享,可在线阅读,更多相关《北邮-微原软件实验报告》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.