微机原理与接口技术实验报告三.doc_第1页
微机原理与接口技术实验报告三.doc_第2页
微机原理与接口技术实验报告三.doc_第3页
微机原理与接口技术实验报告三.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微机原理与接口技术实验报告(三)1、 实验目的:1)学习程序中有限的寄存器的使用。2)学习使用冒泡法排序3)学习程序流程控制:条件跳转指令ja jb call指令,观察程序执行时堆栈的变化(学会用debug g命令设置断点)4)学习利用编译错误信息进行程序修改,通过运行寻找并改正逻辑错误。5)灵活运用各种dos功能调用实现显示功能6)学习将数字用转换成相应的ascii码并显示2、实验内容:多重循环程序设计:多重循环中,循环中包含另一个循环,每一循环都有各自的循环计数器和终点判断。应注意:各重循环初始条件的控制;内循环可以嵌套在外循环中,也可以几个内循环并列在外循环中,但各层循环之间不能交叉,内循环可以跳到外循环中,不可以从外循环直接跳进内层循环;应用:冒泡排序法以Buffer为首地址保存一组(假设10个)无序的有符号数,编写排序程序使数由小到大重新排列。程序框图如下:举例:(值 1 2 3 4,数值越大气泡越大)原顺序: 第一次交换 第一次内循环结束(外循环1) 第二次内循环结束(外循环2)3、试验结果程序编写如下:dispmsg macro messge mov ah,9 lea dx,messge int 21h endm.model small.dataBufferdb 10,-30,52,2,42db 92,32,-36,31,63Nequ $-bufferjieshu db $ newlines db 0dh,0ahjieguo db the result is:,0dh,0ahjguo db 30 dup(?,?),$.stack 100.codemov ax,datamov ds,axmov ax,stackmov ss,axmov bx,offset buffermov cx,N-1lop1:mov dx,cxlop2:mov al,bxcmp al,bx+1jle bijiaoxiayigexchg al,bx+1mov bx,aljixu:inc bxbijiaoxiayige:inc bxloop lop2mov cx,dxmov bx,offset bufferloop lop1xianshi:mov si,offset buffermov di,offset jguoxiayige:mov al,sicmp al,$jz wanbimov ch,almov cl,4shr al,clcall dispmov al,chand al,0fhcall dispinc sijmp xiayigewanbi:dispmsg jieguoMov ax,4c00HInt 21Hdisp proccmp al,0ahjs doneadd al,7done:add al,30hmov di,alinc diretdisp endpEndend start该程序中,首先定义一个宏dispmsg,然后定义各段。在数据段中先对buffer中数字进行冒泡法排序,将结果保存至原数据段buffer,然后从头依次对各个数字进行ascii码转换。分别用si和di指向buffer和jguo的段首,buffer中每转化一位,赋值给jguo,然后di增一。这样,buffer中每一字节中数字的高低两位将对应jguo中的两个字节。最后显示jguo即可运行结果如下:下面通过设置断点查看排序前后存放排序字符串的内存空间的内容1、点击调试,通过U语句进行反汇编2、使用G语句,运行至0b98:0005可知ds值为0b983、通过d语句查看相应内存内容4、同理,通过反汇编找到排序结束后的指令位置,选择0b98:002c,运行g语句5、通过d语句查看排序后的内存内容实验中遇到的问题及解决方法:1、汇编语言中寄存器有限,在使用时注意是否保存寄存器中原有的值,防止在使用寄存器时将原值改变。在使用宏或调用函数前,可现将寄存器入栈,在调用完毕后弹出,从而恢复原值。2、求字符串长度时可用“长度 equ $-字符串名”这种简便方法,但使用时需注意$表示当前地址

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论