- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
8086实现计算器实验报告--第1页
实验报告
一、题目:数字计算器的汇编语言实现
二、设计任务:
利用8086微处理器,可编程并行通信接口芯片8255A等相关器件在
proteus中设计仿真一个简单数字计算器,利用8086汇编语言编写完成加、减、
乘、除、幂运算、阶乘运算、求余运算等功能,能实现键盘十进制运算表达式的
输入和显示,按“=”后输出十进制表示的运算结果。
三、需求分析:
(一)根据数据的输入要求对键盘(本实验中用4X5按钮阵来代替键盘)的
数据读取及运算符号读取进行定义,根据8255A的相关性质对其进行编程实现,
使每一个按钮对应一个十以内的整数或者某一个运算符号。
(二)根据8255A的输出性质,选择输出端口,对其进行编程,8255A为8086
微处理器与外部设备之间提供并行输入/输出的通道。不用附加外部电路,并行
接口是在多根数据线上,以数据字节/字与I/O设备交换信息。
(三)数据的显示有LED数码管显示,LED数码管有7个字符段和一个小数
点段组成,每段对应一个二极管,当二极管点亮时,相应的的字符段点亮,可以
进行数据的显示。
四、总体方案
首先利用程序不断扫描所设的按钮键盘是不是有输入,如果没有就一直扫
描,如果有就调用子程序进行判断,是数值则进行存储并同时进行显示,是运算
符号等就调用相应的子程序进行操作,操作后则继续利用程序不断扫描键盘是不
是有输入,从而实现部分十进制数的加、减、乘、除、幂运算、阶乘运算、求最
大公约数的运算。运算完成后根据程序将运算的结果储存到锁存器中并显示到
LED显示器上。
五、硬件设计
本次实验需要的元器件有:8086微处理器、可编程并行通信接口芯片8255A、
8086实现计算器实验报告--第1页
8086实现计算器实验报告--第2页
输入输出锁存器74LS373、LED数码显示管、若干按钮组成的4X5矩阵按键、若干
电阻、总线等。
1、8086微处理器
当引脚接高电平时,CPU工作于最小模式。此时,引脚信号24~31的含义及
其功能如下:
(1)IO/M:存储器、I/O端口选择控制信号。信号指明当前CPU是选择访问存
储器还是访问I/O端口。为高电平时访问存储器,表示当前要进行CPU与存储器之
间的数据传送。为低电平时,访问I/O端口,表示当前要进行CPU与I/O端口之间
的数据传送。
(2)WR:写信号,输出,低电平有效。信号有效时,表明CPU正在执行写总线
周期,同时由信号决定是对存储器还是对I/O端口执行写操作。
(3)INTA:可屏蔽中断响应信号,输出,低电平有效。CPU通过信号对外设
提出的可屏蔽中断请求做出响应。为低电平时,表示CPU已经响应外设的中断请求,
即将执行中断服务程序。
(4)ALE:地址锁存允许信号,输出,高电平有效。CPU利用ALE信号可以把
AD15~AD0地址/数据、A19/S6~A16/S3地址/状态线上的地址信息锁存在地址锁
存器中。
(5)DT:数据发送/接收信号,输出,三态。DT/信号用来控制数据传送的方向。
DT/为高电平时,CPU发送数据到存储器或I/O端口;DT/为低电平时,CPU接收来
自存储器或I/O端口的数据。
(6)DEN:数据允许控制信号,输出,三态,低电平有效。信号用作总线收发
器的选通控制信号。当为低电平时,表明CPU进行
文档评论(0)