哈工程 微机原理实验 实验二

哈工程 微机原理实验 实验二

ID:39473691

大小:282.50 KB

页数:9页

时间:2019-07-04

哈工程 微机原理实验 实验二_第1页
哈工程 微机原理实验 实验二_第2页
哈工程 微机原理实验 实验二_第3页
哈工程 微机原理实验 实验二_第4页
哈工程 微机原理实验 实验二_第5页
资源描述:

《哈工程 微机原理实验 实验二》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、哈尔滨工程大学实验报告实验名称:实验二分支循环程序设计及实现实验室名称:水声电子信息实验室哈尔滨工程大学实验室与资产管理处制1.实验名称分支循环程序设计及实现2.实验目的1.学习分支程序、循环结构程序的设计和调试方法;2.掌握分支、循环等程序的基本结构。3.通过循环指令、条件转移指令等完成较复杂程序的设计。3.实验内容与实验步骤3.1实验一数据串搬家程序:BUF1开始的16个以字为单位的数据搬移到BUF2。编程流程图:图1实验1的编程框图程序源代码DATASEGMENTBUF1DW1111H,2222H,3333H,4444H,555

2、5H,6666H,7777H,8888H,8888H,7777H,6666H,5555H,4444H,3333H,2222H,1111H;定义数组BUF2DW16DUP(?);定义目标数组DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVCX,16;利用CX确定循环次数MOVSI,OFFSETBUF1;将BUF1的偏移地址赋给SIMOVDI,OFFSETBUF2;将BUF2的偏移地址赋给DIKEEPUP:MOVBX,[SI];将BUF1中的数取出,赋给BX

3、MOV[DI],BX;将BUF1中的数赋给BUF2INCSI;SI指向下一个数的地址INCSI;DI指向下一个数的地址INCDIINCDILOOPKEEPUPMOVAH,4CHINT21HCODEENDSENDSTART上机运行这段程序,可以得到如下结果。图2实验1的编程结果可以看出,内存中的BUF2位置已经被复制了BUF1的数据,证明程序运行正常,符合要求。3.2实验二将BUF1开始的16个以字为单位的数据中的正数搬移到BUF2。编程流程图:图3实验2的编程框图程序源代码:DATASEGMENTBUF1DW1111H,2222H,333

4、3H,4444H,8888H,9999H,0AAAAH,0BBBBH,0123H,0234H,0345H,4567H,89ABH,8123H,8124H,8943HBUF2DW16DUP(?)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVCX,16MOVDI,OFFSETBUF1MOVBX,OFFSETBUF2KEEPUP:MOVAX,[DI]TESTAX,8000HJZPOSITIVEJMPGOONPOSITIVE:MOV[BX],AXINCBXIN

5、CBXGOON:INCDIINCDILOOPKEEPUPMOVAH,4CHINT21HCODEENDSENDSTART运行程序,我得到了如下结果。图4结果取出正数正数结果已经取出。3.3实验三已知数据区STRINGA开始的存储单元中,存有用大写字母表示的自己姓名的全拼,将其转换成小写字母后,存放到STRINGB开始的存储单元中。编程流程图:图5实验3的编程框图程序源代码:DATASEGMENTSTRINGADB'ZHANGMENGLONG','$'STRINGBDB15DUP(?)DATAENDSCODESEGMENTASSUMECS:C

6、ODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVCX,15MOVSI,OFFSETSTRINGAMOVDI,OFFSETSTRINGBKEEPUP:MOVBX,[SI]ADDBX,20HMOV[DI],BXINCSIINCDILOOPKEEPUPMOVAH,4CHINT21HCODEENDSENDSTART运行程序,我得到了如下结果。图6姓名大写拼音转为了小写拼音3.4实验四在题2的基础上继续编程,实现当从键盘输入’A’时,在屏幕上显示大写的名字,当输入’B’时,在屏幕上显示小写的名字。编程流程图:图7实验4的

7、编程框图程序源代码:DATASEGMENTSTRINGADB'ZHANGMENGLONG','$'STRINGBDB15DUP(?),'$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVCX,15MOVSI,OFFSETSTRINGAMOVDI,OFFSETSTRINGBKEEPUP:MOVBX,[SI]ADDBX,20HMOV[DI],BXINCSIINCDILOOPKEEPUPMOVAH,01H;等待输入INT21HTESTAL,01H;利用输入最

8、后一位测试JZNAM;输入B,不为0继续NUM:MOVDX,OFFSETSTRINGAMOVAH,9;输出大写INT21HJMPOVERNAM:MOVDX,OFFSETSTRINGB;输入A为

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

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

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