微机原理实验报告_第1页
微机原理实验报告_第2页
微机原理实验报告_第3页
微机原理实验报告_第4页
微机原理实验报告_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

1、实验一 两个多位十进制数相加的实验一、实验目的学习数据传送和算术运算指令的用法熟悉在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。二、实验内容 将两个多位十进制数相加,要求被加数和加数均以ASCII码形式各自顺序存放在以DATA1、DATA2为首的5个内存单元中(低位在前),结果送回DATA1处。三、程序流程图图 3-1四、参考程序清单DATA SEGMENTDATA1 DB 33H,39H,31H,37H,34H;被加数DATA1END EQU $-1DATA2 DB 34H,35H,30H,38H,32H;加数DATA2ENDEQU $-1SUM DB 5 DUP(?)DATA

2、ENDSSTACK SEGMENTSTA DB 20 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATASTART: MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX MOV AX,TOP MOV SP,AX MOVSI,OFFSET DATA1ENDMOVDI,OFFSET DATA2ENDCALLADDAMOVAX,4C00HINT21HADDAPROCNEARMOVDX,SI MOVBP,DIMOVBX,05HAD1: SUBBY

3、TE PTR SI,30HSUBBYTE PTR DI,30HDECSIDECDIDECBXJNZAD1MOVSI,DX MOVDI,BP MOVCX,05HCLCAD2:MOVAL,SIMOVBL,DIADCAL,BLAAA MOVSI,AL DECSIDECDILOOPAD2MOVSI,DXMOV DI,BPMOVBX,05HAD3: ADDBYTE PTR SI,30H ADDBYTE PTR DI,30HDECSIDECDIDECBXJNZAD3RETADDAENDPCODEENDSEND STAR 实验二 排序实验一、实验目的掌握用汇编语言编写排序程序的思路和方法。巩固在PC机上建立

4、、汇编、链接、调试和运行汇编语言程序的过程。二、实验内容 将指定内存出开始的数据(最多为4位数)按从大到小的顺序排列。第一个数字表示数据的个数(不是要比较的数值!)。三、程序流程图图 3-2四、程序清单DATA SEGMENTADDR DW 8,234,35,67,876,54,39,765,237DATA ENDSSTACK SEGMENTSTA DW 32 DUP(?)TOP DW ?STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACKSTART: MOV AX,DATA MOV DS,AX MOV ES,AXMOVAX

5、,STACKMOVSS,AXMOV SP,TOP MOVCX,WORD PTR ADDR0DEC CXLOOP1: MOVDI,CXMOV BX,2LOOP2: MOV AX,WORD PTR ADDRBX CMP AX,WORD PTR ADDRBX+2 JGE CCC XCHG AX,WORD PTR ADDRBX+2 MOV WORD PTR ADDRBX,AXCCC: ADD BX,2 LOOP LOOP2 MOV CX,DI LOOP LOOP1EXIT: MOV AX,4C00H INT 21HCODE ENDSEND START实验三 自编程序上机调试一一、实验目的掌握用汇编语言

6、编写程序的思路和方法。巩固在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。二、实验内容 选课本或作业题中题目STACK SEGMENT STACK DB 10 DUP (?)STACK ENDSDATA SEGMENTVARX DW 6VARY DW 7VARZ DW 8RESULT DW ?DATA ENDSCODE SEGMENT ASSUME CS:CODE, DS:DATA, SS:STACKSTART: MOV AX, DATA MOV DS, AXMOV DX, VARXADD DX, VARYMOV CL, 3SAL DX, CLSUB DX, VARZSAR DX,

7、1MOV RESULT, DXMOV AH, 4CHINT 21HCODE ENDS END START实验四 自编程序上机调试二一、实验目的掌握用汇编语言编写程序的思路和方法。巩固在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。二、实验内容 选课本或作业题中题目上机调试。STACK SEGMENT STACK DW 20H DUP(?)STACK ENDSDSEG SEGMENTASCX DB '1234'ASCY DB '5'PRODUCT DB 6 DUP(?)DSEG ENDSCSEG SEGMENTASSUME CS:CSEG, DS:DSE

8、G, SS:STACKBEGIN: MOV AX, DSEG MOV DS, AXCALL ASCMULMOV AH, 4CHINT 21HASCMUL PROC NEAR PUSH AXPUSH DIMOV CX, 4LEA SI, ASCX ADD SI, CXDEC SILEA DI, PRODUCTADD DI, CXAND ASCY, 0FHNEXT: MOV AL, SIAND AL, 0FHMUL ASCYAAMADD AL, DIAAAADD AL, 30HMOV DI, ALDEC DIMOV DI, AHDEC SILOOP NEXTPOP DIPOP AXRETASCMU

9、L ENDPCSEG ENDS END BEGIN实验五 8255并行I/O口实验一、实验要求利用8255可编程并行口芯片,实现输入/输出实验,实验中用8255PA口作输入,PB口作输出。二、实验目的1、了解8255芯片结构及编程方法。2、了解8255输入/输出实验方法。三、预备知识8255是Intel公司生产的与Intel8080/8085系列的MPU配套的可编程外围接口电路,简称PPI。它有A、B、C三个八位端口寄存器,通过24位端口线与外部设备相连,基中C口可分为上半部和下半部。这24根端口线全部为双向三态。三个端口可分二组来使用,可分别工作于三种不同的工作方式。四、实验原理图及连线1、

10、本实验主要用到的模块:8255模块、开关量输出模块、01指示模块、实验译码单元等;2、PA0-PA7分别接开关量输出模块S0-S7对应的插座;3、PB0-PB7分别接01指示模块DO71-DO78对应的插座;4、8255A的片选/CS接地址译码单元的2A0-2A7;5、数据线XD0XD7接系统数据线区的任一插座。图 3-3五、实验内容将实验的线路连接好后,编程,将8255的A口作为输入,输入信号由8个逻辑电平开关提供,B口作为输出,其内容由发光二极管来显示。六、程序清单L8255_CMD EQU 2A3HL8255_PA EQU 2A0HL8255_PB EQU 2A1HL8255_PC EQ

11、U 2A2HCODE SEGMENT ASSUME CS:CODE,DS:CODEBEGIN: MOV CX,0FFHAA: LOOP AA MOV DX,L8255_CMD MOV AL,9CH ;10011000 OUT DX,AL NOP NOP NOP NOP NOPBB: MOV DX,L8255_PA IN AL,DX XOR AL,0FFH MOV DX,L8255_PB OUT DX,AL JMP BBCODE ENDS END BEGIN七、程序框图开始延时置8255工作方式读8255PA口置8255PB口见图3-4。图 3-4八、实验步骤1、参照图中的内容连好线;2、运行上

12、位机软件,装载并运行相应程序即可(联机请参考程序8255.asm)。注意:同学们自己编写程序时,8255的/CS连线可以接地址译码单元的其他信号,其它连线相同。如果用的端口与本实验不一样,也可以改变IO口的连线。九、仪器配置ZY15MicInt12BB微机原理及接口实验箱 一台。十、实验现象当读到某个开关处于高电平时,对应的发光二极管就会亮。十一、思考题根据程序列出实验中8255的各个端口的地址,如果8255的/CS改接译码信号280H,其它信号不变,那么对应的端口地址又是多少?实验六 ADC0809A/D转换实验一、实验目的1、加深理解逐次逼近法模数转换器的特征和工作原理;2、掌握A/D转换

13、芯片与8088/86的接口方法;3、了解A/D芯片ADC0809转换性能及编程方法。二、预备知识A/D转换器大致有三类:一是双积分A/D转换器,优点是精度高,抗干扰性好;价格便宜,但速度慢;二是逐次逼近A/D转换器,精度,速度,价格适中;三是并行A/D转换器,速度快,价格也昂贵。实验用的ADC0809属第二类,是八位A/D转换器。每采集一次一般需100us。本程序是用延时查询方式读入A/D转换结果,也可以用中断方式读入结果,在中断方式下,A/D转换结束后会自动产生EOC信号,做为转换完成的信号。三、实验原理说明及连线 1、本实验的位置在实验箱的“ADC0809模块”;2、本实验用芯片ADC08

14、09的片选地址为2B8H,实验箱上已固定好,不需要再连线;3、将该实验模块的CLOCK和“信号源模块”的1MHz信号连接起来;4、用排线将“系统数据总线输出单元”中的任意一组数据线和本实验模块的“ADC0809:XD0-XD7”连接起来;5、将通道0模拟量输入端IN0接模拟信号产生电路模块中的电位器R093的中心抽头,然后将R093的两端一端接地,另一端接VCC(+5V)。图 3-8四、实验内容利用电位器输出一个幅值可调的直流电压信号,送入ADC0809的通道0,将转换后的结果在屏幕上显示出来,并验证它与输入电压的关系。五、实验步骤1、确认连接好线路;2、装载运行程序。六、实验框图图 3-9七

15、、仪器配置ZY15MicInt12BB微机原理及接口实验箱 一台八、实验现象当用户扭动电阻器时,屏幕将显示相应的数值。 九、思考题按图中的连接线路,输入一个3V的模拟信号,输出的数字信号的理论值是多少,在实验箱上验证该值的正确性。实验中用的ADC0809的IN0的地址是什么?十、程序清单CODE SEGMENTASSUME CS:CODESTART:MOV DX,2B8H ;2B0H-2B7HMOV AL,00HOUT DX,ALCALL DELAYIN AL,DXCALL SHOWCALL DELAYJMP STARTSHOW PROC NEAR PUSH DX PUSH AX MOV CL,4 SHR AL,CL AND AL,0FH CALL H2C JC SHOW_OUT MOV DX,88H OUT DX,AL POP AX AND AL,0FH CALL H2C JC SHOW_OUT MOV DX,88H OUT DX,AL MOV CX,0FFHDELA: LOOP DELA SHOW_OUT: POP DX RETSHOW ENDPH2C PROC NEAR CMP AL,0 JAE N0_9 JMP H2C_ERRN0_9: CMP AL,9 JBE N0_9_OK CMP AL,0

温馨提示

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

评论

0/150

提交评论