




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
哈尔滨理工大学微型计算机原理及接口技术实验报告学 院 : 荣成学院专 业 : 电气工程及其自动化 班 级 : 2010级自动化 学 号 : 1030120211 姓 名 : 严苛 指导老师 : 陈琳 完成时间 : 2012.5.06 实验一 显示“HELLO WORLD!”1. 实验目的从最简单的汇编语言入门起,逐步掌握汇编语言的指令,汇编语言的编程技巧,熟悉汇编语言的编程环境,慢慢入门提升技能。2. 试验环境及设备实验采用的是emu8086仿真软件,全软件操作,无硬件操作,操作方法简单,实验过程全用汇编指令编程。3. 实验内容用汇编语言的指令编写程序,然后通过屏幕显示出“HELLO WORD!”的字样出来,然后截图,写出实验报告。试验程序代码如下:OEG 100HMOV AX, 0B800hMOV DS, AXMOV 52h, HMOV 54h, E MOV 56h, LMOV 58h, LMOV 5Ah, O /到这一步就把“HELLO”存入相应的地址中PUSH CS/进栈操作POP DS /出栈操作MOV AX, 0B800hMOV ES, AXMOV ES:5Eh, W MOV ES:60h, OMOV ES:62h, RMOV ES:64h, LMOV ES:66h, DMOV ES:68h, !HLT4.实验结果截图如下: 5.实验结论Emu8086功能比较大,就目前我自己水平要掌握汇编语言语言的编程技巧还是有一定难度,只得才考人家程序,自己再实践实践。实验二 数的求和1 实验目的用汇编语言编写程序实现两个数相加的功能,然后将结果用程序显示出来,最后写出实验报告。2.试验环境及设备实验采用的是emu8086仿真软件,全软件操作,无硬件操作,操作方法简单,实验过程全用汇编指令编程。3实验内容用汇编语言的指令编写程序,然后通过屏幕显示出计算结果,然后截图,写出实验报告。试验程序代码如下:ORG 100HMOV AH, 07MOV AL, 08ADD AL, AHXOR AH, AHAAAMOV DX, AXMOV AH, 0EhOR DH, 30hMOV AL, DHINT 10hOR DL, 30hMOV AL, DLINT 10hRETEND4. 实验结果截图如下:5.实验结论Emu8086功能比较大,就目前我自己水平要掌握汇编语言语言的编程技巧还是有一定难度,不过我相信多次实验就会让自己的水平有长进。 实验三计算数的阶乘1. 实验目的用汇编语言编写程序实现一个数的阶乘的计算功能,然后将结果用程序显示出来,最后写出实验报告。2.试验环境及设备实验采用的是emu8086仿真软件,全软件操作,无硬件操作,操作方法简单,实验过程全用汇编指令编程。3实验内容用汇编语言的指令编写程序,然后通过屏幕显示出计算结果,然后截图,写出实验报告。试验程序代码如下:include emu8086.incORG 100hstart:CALL PTHISDB 13, 10, Enter the number: , 0CALL scan_num; factorial of 0 = 1:MOV AX, 1CMP CX, 0JE print_result; move the number to BX:; CX will be a counter:MOV BX, CXMOV AX, 1MOV BX, 1calc:MUL BXCMP DX, 0JNE overflowINC BXLOOP calcprint_result:; print result in AX:CALL PTHISDB 13, 10, Factorial: , 0CALL PRINT_NUM_UNSJMP exitoverflow:CALL PTHISDB 13, 10, The result is too big!, 13, 10, Use values from 0 to 8., 0JMP startexit:RETDEFINE_SCAN_NUMDEFINE_PRINT_NUMDEFINE_PRINT_NUM_UNSDEFINE_PTHISEND4.实验截图如下,输入数字为5,输出结果为120:5. 实验结论实验的时候觉得实在是太难了,后来慢慢看懂了程序,但是现在我还是不能单独写出来,因为这个汇编语言实在是不像C语言那么容易,这个毕竟是以前的的语言,相比C语言来说没有C语言活跃,况且移植性也不好,所以感觉有点难度。实验四 DEBUG实验1. 实验目的用汇编语言编写程序练习使用DEBUG功能,然后将结果用程序显示出来,最后写出实验报告。2. 实验环境及设备微机电脑一台,DEBUG操作平台,全是软件操作,无硬件操作,操作方法简单,容易上手。3. 操作界面以及实验内容如下:实验内容:用R指令可以看到内存中各个寄存器的状态,以及内容,同时R可以修改内存中寄存器的内容,例如修改AX内容之前里面的内容是1212,在界面中输入R AX我们修改成0013,然后再输入R查看则会看到AX的值已经被改变了,如下所示:用D指令可以查看内存中的内容,例如输入D则会看到内存中的内容:可以看到内存中的内容还是比较多的。用A指令可以输入一段汇编语言在内存中执行,如图所示:然后用D指令:d 0b19:0100可以查看执行的结果:这个里面就有刚才执行的程序内容。用U指令可以把上述内存中的内容翻译成汇编命令:输入U 0b19:0100结果如下:然后用R指令找到0b19:0100的地址,输入r CS 0b19 r IP 0100 找到之后然后用R指令可以查看内存中各个寄存器的内容:4. 实验结果及结论此次试验没有采用EMU8086操作方式,而是在DEBUG的操作界面下进行的,这样我们可以很好的看到内存中各个寄存器的内容,同时也让加深了汇编语言的熟悉程度,其中的单步运行更能够看到汇编语言的运行过程,从另外的角度理解了程序的运行方式。实验五 比较数字的大小1.实验目的用汇编语言编写程序实现数的大小比较的功能,然后将结果用程序显示出来,最后写出实验报告。2试验环境及设备实验采用的是emu8086仿真软件,全软件操作,无硬件操作,操作方法简单,实验过程全用汇编指令编程。3.实验内容,用汇编语言的指令如下:ORG 100hMOV AH, 4MOV AL, 4CMP AH, AL ;比较得到两个数字相等NOPMOV AH, 4MOV AL, 3CMP AH, AL;比较得到4比3大NOPMOV AH, 1MOV AL, -5CMP AH, ALNOPMOV AH, 1MOV AL, 251CMP AH, AL;比较得到1比251小NOPMOV AH, -3MOV AL, -2CMP AH, AL ;比较得到-3比-2小NOPMOV AH, -2MOV AL, -3CMP AH, AL;比较得到-2比-3大NOPMOV AH, 255MOV AL, 1CMP AH, AL ;比较得到255比1大NOPHLT4.实验结果及结论两数比较大小必然涉及到状态寄存器的标志位,比较大小时,若是两数相等,则ZF=1,此时两数相等,因为比较大小的时候是两个数相减的过程,只是最终结果不会保存下来,但是相应的状态标志位会发生改变;若是两数不相等,这种情况下,分两种情况,第一种两个无符号的数字比较,若CF=0,则表示没有借位,则是比较数的前面一个比后面大,若CF=1,表示有借位,后面一个数比前面的数字小
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 服装鞋业时尚服装设计与营销方案
- 健康产业数字化服务平台建设及
- 河南省夏邑一高2026届高二化学第一学期期中学业水平测试模拟试题含解析
- 交通物流智慧公路与绿色物流实施方案
- 智能制造企业工业互联网平台应用推广计划
- (2025年标准)国有公司入股协议书
- (2025年标准)广州供水协议书
- 时尚产业个性化设计与生产流程优化方案
- (2025年标准)关于分期还款协议书
- 广东省佛山市佛山三中2026届高三化学第一学期期末达标检测模拟试题含解析
- 2025年公安辅警笔试题目题库(答案+解析)
- 2025年外事办公室翻译招聘面试(俄语)预测题及答案
- 2025年跨境电商物流服务佣金结算合作协议
- 房屋租赁合同交割清单列表
- GB/T 21977-2022骆驼绒
- 心理-认识过程课件
- 水电清包工合同(3篇)
- 《ACT就这么简单》课件
- 农机行政处罚流程图
- 盘阀结构和原理课件
- 环境、环境问题与环境科学
评论
0/150
提交评论