当前位置:文档之家› 华中科技大学计算机原理实验报告

华中科技大学计算机原理实验报告

-电气学科大类《计算机原理与应用实验》课程实验报告电气与电子工程学院2012级姓名:学号:专业班号:日期:2014年1月7日实验成绩:评阅人:实验评分表目录实验评分表 (I)实验一:EMU8086软件安装与使用 (1)一、实验目的 (1)二、实验设备 (1)三、实验任务 (1)四、实验原理 (1)五、实验内容 (1)六、实验过程及结果 (2)七、实验感想 (6)八、参考文献 (6)实验二:汇编语言实例讲解与程序编写 (7)一、实验目的 (7)二、实验设备 (7)三、实验任务 (7)四、实验原理 (7)五、实验内容 (8)六、实验过程及结果 (9)七、实验感想 (20)八、参考文献 (20)实验三:基于PROTEUS软件的8086最小系统硬件设计 (21)一、实验目的 (21)二、实验设备 (21)三、实验任务 (21)四、实验原理 (21)五、实验内容 (23)六、实验过程及结果 (23)七、实验感想 (27)八、参考文献 (28)实验四:基于8086最小系统的汇编程序设计 (29)一、实验目的 (29)二、实验设备 (29)三、实验任务 (29)四、实验原理 (29)五、实验内容 (30)六、实验过程及结果 (31)七、实验感想 (34)八、参考文献 (35)实验五:8255并行接口实验(演示实验) (36)一、实验目的 (36)二、实验设备 (36)三、实验任务 (36)四、实验原理 (36)五、实验内容 (37)六、实验过程及结果 (38)七、实验感想 (39)八、参考文献 (39)实验六:工频测频接口电路设计与实现 (41)一、实验目的 (41)二、实验设备 (41)三、实验任务 (41)四、实验原理 (41)五、实验内容 (44)六、实验过程及结果 (45)七、实验感想 (46)八、参考文献 (46)实验一:EMU8086软件安装与使用一、实验目的通过本实验学习EMU8086软件的安装与使用。

二、实验设备PC微机一台,Emu8086仿真软件三、实验任务1. 安装Emu8086仿真软件。

2. 利用Emu8086仿真软件编程。

四、实验原理Emu8086仿真软件就是在Windows下的一种仿真软件,它可以仿真模拟8086的程序运行,并且可以直观地观察CPU寄存器的变化情况。

Emu8086 - Microprocessor Emulator结合了一个先进的原始编辑器、组译器、反组译器、具除错功能的软件模拟工具(虚拟PC),还有一个循序渐进的指导工具。

这对刚开始学组合语言的人会是一个很有用的工具。

它会在模拟器中一步一步的编译程序码并执行,视觉化的工作环境让它更容易使用。

你可以在程序执行当中检视暂存器、旗标以及记忆体。

模拟器会在虚拟PC 中执行程序,这可以隔绝你的程序,避免它去存取实际硬体,像硬碟、记忆体,而在虚拟机器上执行组合程序,这可以让除错变得更加容易。

这个软件完全相容於Intel 的下一代处理器,包括了Pentium II、Pentium 4,而相信Pentium 5 也会继续支援8086 的。

这种现象让8086 程序码的可携性相当高,它可以同时在老机器以及现代的电脑是执行,8086 的另一个优势是它的指令比较小且相当容易学习。

五、实验内容安装Emu8086仿真软件,熟悉菜单栏,工具栏的每个选项的作用,按照操作流程完成程序的编译、链接,并对编辑窗口中所编写的简单汇编程序进行仿真调试,最后能够输出正确结果。

六、实验过程及结果1. EMU8086安装。

2. EMU8086使用,安装完毕,得到窗口如下图1-1:图1-1 Emu进入主界面3. 操作流程(1)file->new->empty workplace,编辑程序,如下图1-2:图1-2 Emu程序编辑界面(2) file->save,保存程序(**.asm格式),完成程序的编辑.(3) assmbler->compile,完成程序的编译和链接,如下图1-3:图1-3 Emu程序编译完成界面4. emulator->show emulator,开始仿真调试,如下图1-4:图1-4 Emu程序仿真调试界面5. 左键点击run运行程序,结果如图1-5:图1-5 Emu程序仿真调试结果界面七、实验感想在这次实验中,初步了解了8086仿真软件,对上课的一些知识有了更深刻的认识,知道其是如何工作的。

利用软件完成了几个实验,收获很多。

八、参考文献[1]李继灿,谭浩强.微机原理与接口技术.北京:清华大学出版社[2]王爽.汇编语言.北京:清华大学出版社[3]沈美明,温冬婵.汇编语言程序设计.北京:机械工业出版社[4]许立梓.微型计算机原理及应用.北京:机械工业出版社实验二:汇编语言实例讲解与程序编写一、实验目的学习所给的汇编程序示例,自己能亲自动手编写基本的汇编程序。

二、实验设备PC微机一台,Emu8086仿真软件三、实验任务1. 熟练掌握基本的汇编指令意义。

2. 正确理解所给示例中每行代码的意义及作用。

3. 按要求编写所给的3个题目的代码并正确显示结果。

四、实验原理汇编程序规范编程:使用汇编编程采用下面的编程规范能够极大简化编程过程,提高编程效率,同时能够保证功能的顺利实现,下文是规范化汇编程序的基本框架,一段典型的汇编程序主要包括数据段及其定义,堆栈段及其定义,最后一部分是代码的编写。

DATAS SEGMENT ;此处输入数据段代码DATAS ENDS;-----------------------------------------------STACKS SEGMENT ;此处输入堆栈段代码STACKS ENDS;-----------------------------------------------CODES SEGMENTASSUME CS:CODES,DS:DATAS,SS:STACKSSTART:MOV AX,DATASMOV DS,AX;此处输入代码段代码MOV AH,4CHINT 21HCODES ENDSEND START以下以“hello”为例,介绍简单汇编程序的基本内容:aa SEGMENT ; 数据段1xx DB 'Hello!’ ; 定义源串aa ENDS;-----------------------------------------------bb SEGMENT ;数据段2yy DB 6 dup (?) ; 定义目的缓冲区bb ENDS;-----------------------------------------------cc SEGMENT ;代码段ASSUME CS:cc, DS:aa, ES:bb ;指示指令中标号,变量所在段start : CLD ;设置传送方向MOV AX , aa ;DS:SI ← 源串首地址MOV DS , AXLEA SI , xxMOV AX , SEG yy ;ES:DI ← 目的首地址MOV ES , AXMOV DI , OFFSET yyMOV CX , 6 ;CX ← 串的长度REP MOVSB ;串传送MOV AH , 4CH ;调用4CH系统功能,返回DOSINT 21Hcc ENDSEND start ;指示程序结束和程序入口五、实验内容1:十进制数的显示,就是显示十进制数字number2:编程计算(w1-(w2*w3+w4-25000))/w5=w6(w1 到w5 可以在数据定义时自行赋值,为使程序简单,最好使得最终w6的结果为整数。

)3:将BL寄存器的内容按二进制形式显示出来提示:把要显示的数字存入bl寄存器;最后的输出结果就是3的二进制。

(比如待显示数据为7,则其二进制显示结果为 0000 0111)六、实验过程及结果1:十进制数的显示,就是显示十进制数字number (1)file->new->empty workplace,如下图编辑程序如图(2) file->save,保存程序(**.asm格式),完成程序的编辑.(3) assmbler->compile,完成程序的编译和链接,如下图4. emulator->show emulator,开始仿真调试,如下图5. 左键点击run运行程序,结果如图2:编程计算(w1-(w2*w3+w4-25000))/w5=w6 (1)file->new->empty workplace,如下图2-3编辑程序如图(2) file->save,保存程序(**.asm格式),完成程序的编辑.(3) assmbler->compile,完成程序的编译和链接,如下图4. emulator->show emulator,开始仿真调试,如下图5. 左键点击run运行程序,结果如图3:将BL寄存器的内容按二进制形式显示出来提示:把要显示的数字存入bl寄存器;最后的输出结果就是3的二进制。

(比如待显示数据为7,则其二进制显示结果为 0000 0111)(1)file->new->empty workplace,如下图编辑程序如图(2) file->save,保存程序(**.asm格式),完成程序的编辑.(3) assmbler->compile,完成程序的编译和链接,如下图4. emulator->show emulator,开始仿真调试,如下图5. 左键点击run运行程序,结果如图七、实验感想在这次实验中,收获很多,读懂了程序,同时对其中国内一些程序进行了修改,从而使它更简洁。

比如例三中,修改了一些语句,同时没有影响其运行结果。

在助教的讲解下,学会了如何使用防闪退,这是另一个收获。

八、参考文献[1]李继灿,谭浩强.微机原理与接口技术.北京:清华大学出版社[2]王爽.汇编语言.北京:清华大学出版社[3]沈美明,温冬婵.汇编语言程序设计.北京:机械工业出版社[4]许立梓.微型计算机原理及应用.北京:机械工业出版社实验三:基于Proteus软件的8086最小系统硬件设计一、实验目的1.学习使用Proteus进行8086微机系统仿真设计的方法。

2.学习8086CPU以及外部电路的接法和应用原理。

二、实验设备PC微机一台、Proteus软件、emu8086编码器软件三、实验任务1. 正确安装Proteus软件。

2. 使用Proteus绘制38译码电路,并通过通断开关,观察二极管导通情况。

3. 在Proteus中绘制8086最小系统电路,并加载程序,观察运行结果。

四、实验原理本实验首先学习Proteus软件的安装,并通过绘制简单的38译码器电路掌握该软件的使用方法。

相关主题