微机原理汇编实验四.docx

上传人:b****8 文档编号:8896897 上传时间:2023-02-02 格式:DOCX 页数:12 大小:4.77MB
下载 相关 举报
微机原理汇编实验四.docx_第1页
第1页 / 共12页
微机原理汇编实验四.docx_第2页
第2页 / 共12页
微机原理汇编实验四.docx_第3页
第3页 / 共12页
微机原理汇编实验四.docx_第4页
第4页 / 共12页
微机原理汇编实验四.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

微机原理汇编实验四.docx

《微机原理汇编实验四.docx》由会员分享,可在线阅读,更多相关《微机原理汇编实验四.docx(12页珍藏版)》请在冰豆网上搜索。

微机原理汇编实验四.docx

微机原理汇编实验四

微机原理与接口技术课程实验报告

实验名称:

___地址译码电路设计实验________

姓名:

应旻婕学号:

1452536同组:

邓修齐实验日期:

2016年11月15日

一、实验目的

(1)学习3-8译码器在接口电路中的应用。

(2)掌握地址译码电路的一般设计方法。

二、实验器材

PC微机一台、TD-PIT+实验系统一套。

三、实验内容

用74LS138译码器设计地址译码电路,并用其输出作为基本输入输出

微机接口电路中,常采用74LS138译码器来实现I/O端口或存储器的地址译码。

74LS138有3个输入引脚、3个控制引脚及8个输出引脚,其管脚信号如图6所示。

当3个控制信号有效时,相应于输入信号A、B、C状态的那个输出端为低电平,该信号即可作为片选信号。

32位扩展系统总线上有一个IOM/信号,该信号为低电平时指示当前操作为I/O操作,为高电平指示当前操作为存储器操作,它和译码器不同的连接可以用来区分是I/O端口译码还是存储器端口译码。

32位总线地址是由A2开始,所以地址是以4字节边界对齐的。

实验系统的I/O地址空间共有256字节,偏移地址一般从00H~FFH。

起始地址由PC机系统分配,可以用CHECK程序读出。

所以设计地址译码电路,主要是针对低8位地址线译码,得到偏移在00H~FFH之间的端口。

本实验要求不使用总线上的片选信号,自行设计端口偏移地址分别为C0H~DFH和E0H~FFH的译码电路,然后用译码输出作为基本输入输出单元的片选。

编写程序,完成I/O数据操作。

四、实验方案(简要总结)

基础实验:

(1)确认从PC机引出的两根扁平电缆已经连接在实验台上。

机引出的两根扁平电缆已经连接在实验台上。

(2)按图所示连接实验线路。

(3)首先运行CHECK查看I/OI/O端口始地址。

(4)利用设计好的端口、地址编写程序,然后译链接。

(5)运行程序,拨动开关观看数据灯显示是否正确。

拓展实验:

修改相关地址,重复试验,观察现象

 

五、实验结果及体会

1、实验结果

⏹基础实验

1)根据实验指导书连线如图所示:

2)进入tddebug,获取得到各I/O端口端口号如图所示

3)输入汇编语言代码如图所示:

4)编译、连接文件后,运行程序结果如图所示

●结果:

开关K0-K7分别与LED灯D0-D7相对应,打开/闭合开关K7-K0,对应的LED小灯D7-D0也依次点亮/熄灭。

●结论:

学习并掌握了静态存储器操作原理。

学习了32位总线存储器接口电路设计。

掌握不同总线字节宽度访问存储器的编程方法。

●分析:

试验中PUSH,POP,CALL,INT等指令都会用到栈,必须为它们分配合适空间。

该程序的功能是通过不断地读开关的状态并输出到LED灯实现对LED灯的控制。

⏹拓展实验

连线图不变

经过计算后得出结果,将程序代码中的0e0h替换为0a0h

输入汇编语言代码如图所示:

编译、连接文件后,运行程序结果如图所示

●结果:

开关K0-K7分别与LED灯D0-D7相对应,打开/闭合开关K7-K0,对应的LED小灯D7-D0也依次点亮/熄灭。

●结论:

学习并掌握了静态存储器操作原理。

学习了32位总线存储器接口电路设计。

掌握不同总线字节宽度访问存储器的编程方法。

●分析:

观察到的现象和基础实验完全相同,但本质上有区别,要深入探究其中原理。

 

2.实验心得

本次实验不难,但需要一颗细致的心。

连接电路是一个细致的活,经过几次检测线路,才发现线路问题,经过重新连接电路,得到预期效果。

在做地址译码电路设计实验前,我以为不会难做,就像以前做物理实验一样,做完实验,然后两下子就将实验报告做完。

直到做完实验时,我才知道其实并不容易做,但学到的知识与难度成正比,使我受益匪浅。

通过这个实验,我学习了汇编语言,掌握了汇编语言的基本语法和编程,同时我掌握了在PC机上不同进制数及编码相互转换的程序设计方法,部分DOS功能调用使用方法,并且熟悉了Tddebug调试环境和对TurboDebugger的使用。

这次的实验,我学到了不少实用的知识,更重要的是,做实验的过程,思考问题的方法,这与做其他的实验是通用的,真正使我受益匪浅。

六、实验程序清单

1.基础实验代码

;地址译码电路设计实验

;*****根据查看端口资源修改下列符号值*****

;IOY0EQU0DC00H;片选IOY0对应的端口起始地址

Y7EQUIOY0+0E0H;译码电路输出Y7对应的端口地址

STACKSEGMENTSTACK

DW256(?

STACK1ENDS

DATA1SEGMENT

MESDB‘Pressanykeytoexit!

’,0AH,0DH,0AH,0DH,’$’

DATA1ENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA1

START:

MOVAX,DATA1

MOVDS,AX

MOVDX,OFFSETMES;显示退出提示

MOVAH,09H

INT21H

AL:

MOVDX,Y7;读写片选接Y7端口

INAL,DX

OUTDX,AL

MOVAH,1;判断是否有按键按下

INT16H

JZA1;无按键则跳回继续循环,有则退出

QUIT:

;结束程序退出

MOVAX,4c00h

INT21H

CODEENDS

ENDSTART

 

2.拓展实验代码

;地址译码电路设计实验

;*****根据查看端口资源修改下列符号值*****

;IOY0EQU0DC00H;片选IOY0对应的端口起始地址

Y7EQUIOY0+0A0H;译码电路输出Y7对应的端口地址

STACKSEGMENTSTACK

DW256(?

STACK1ENDS

DATA1SEGMENT

MESDB‘Pressanykeytoexit!

’,0AH,0DH,0AH,0DH,’$’

DATA1ENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA1

START:

MOVAX,DATA1

MOVDS,AX

MOVDX,OFFSETMES;显示退出提示

MOVAH,09H

INT21H

AL:

MOVDX,Y7;读写片选接Y7端口

INAL,DX

OUTDX,AL

MOVAH,1;判断是否有按键按下

INT16H

JZA1;无按键则跳回继续循环,有则退出

QUIT:

;结束程序退出

MOVAX,4c00h

INT21H

CODEENDS

ENDSTART

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1