汇编语言 emu8086 电子时钟 课程设计

发的第二篇文章,尽管技术不牛,但还是希望给大家一些帮助。
大致讲一下内容,就是微机原理结课的一个课程设计,使用8086模拟器做一个数字时钟。也没有使用什么比较牛的技术,就是不停的用DOS中断(系统函数)去获取系统时钟,然后对获取的数据转换为对应的ACSII值,然后显示。(这里有初始化一个简单的提示信息)
代码如下:
datas segment
STR DB ‘2021/’
STR1 DB ‘present time: ′ S T R 2 D B ′ e x i t : p l e a s e e s c ! ' STR2 DB 'exit:please esc!

课 程 设 计 任 务 书 "专 业 "自动化 "班 级 " "姓 名 " " "设 计 起 止 日 期 "2013.12.16~2013.12.20 " "设计题目:基于8086CPU的数字时钟设计 " "设计任务(主要技术参数): " "1、利用实验系统上提供的8253和LED数码显示等电路,设计一个电子时钟;" "2、格式如下:6个数码由左向右分别显示为:时、分、秒。 " " " "指导教师评语: " " " " " " " " " " " " " "成绩: 签字: " "年 月 日 " 课程设计说明书 NO.1 "1 引言 " "随着在现代技术进步,电子产品越来越多的在生活中出现,服务于人们的生活,从" "简单的电子手表,到人人必备的手机,我们都可以看到电子时钟的身影。 " "本系统就是基于8086系统,配合8255和8253芯片开发的一个数字电子时钟,有显示" "时分秒的功能。 " "2 设计方案论证 " "2.1一秒定时方案的选择 " "运用8253产生周期为2秒的方波,通过8255芯片的A、B、C口读取电平高低,判断电" "平变化,进而判断1秒延时是否已经到达,这种方法可以写成子程序,执行返回就 " "近似于1秒延时。 " "2.2时钟时分秒的处理方式选择 " "时钟的时分秒的处理方法实际上时数学逻辑问题。在编辑过程中我想到两种解决方" "案。 " "方案一:将时分秒当做三个数据进行处理,设置三个数据空间,作为是分秒的数据" "缓存区,再将缓存区的内容转换成显示数据。每次延时之后判断"秒"是否应该向" " "分"进位,"分"是否应该向"时"进位,"时"是否已经超过24.这个过程理论上可以实" "现,但是逻辑判断较为繁琐。 " "方案二;将时分秒分成六位,放在显示数据缓存区里,每次一秒延时之后判断是否" "向高位进一,若还不进一,则跳回最低位,再次进行一秒延时;由于秒和分都是60" "进制,处理方法一样,而"时"是24进制,应该进行额外处理。 " "2.3八段数码管动态显示 " "对于8279八段数码管的显示需要入码位和段码,因此采用74LS373作为位码输出端 " "口,8255的A、B、C口作为段码输出口。通过CPU输出数据进行位码选择,经74LS37" "3 " 沈 阳 大 学 课程设计说明书 NO.2 " " "输出到位码输入口;设置到六位数据缓存区,经过换码可以取得相应的段码输出到" "段码 " "输入口,并简单延时,就可以显示了。 " "2.4系统原理 " "通过并行接口芯片8255和8086计算机的硬件相连,以及通过8253一秒延时的方法," "来实现适中的计时功能。 " "8086工作在最小模式,5255芯片片选端接到CPU的片选段CS0,A口组委输出口,B口" "作为输入口,B口的第一位用于检测电平;8253片选端接到CPU的片选段CS2,用于 " "锁存位码。一秒计时和功能有软件控制进行。 " "3 系统硬件设计 " "3.1 8086简介 " "Intel8086是16位的微处理器(其内部总线为16位,外部总线为8位,故称为准16位" "微处理器),它采用HMOS工艺40条引脚封装。8086工作时使用5V电源,时钟频率5M" "Hz(8086-1为10MHz,8086-2为8MHz)它有20根地址线,故可寻址的内存空间为1MB" "【2】。 " "(1)8086的主要特性 " "Intel8086/8088CPU是Intel公司推出的高性能的微处理器,具体如下主要特性: " "(a)8086CPU数据总线为16位,8088CUP数据总线为8位。 " "(b)地址总线都是20位,低16位用于数据总线复用,可直接寻址为1MB的存储空间。" "(c)有16位的端口地址,可以寻址64KB的I/O端口。 " "(d)有99条基本指令,指令功能强大。 " "(e)有9种基本寻址方式。 " "(f)可以处理内部和外部中断,外部中断源多达256个。 " "(g)兼容性好,8086、8085在源程序一级兼容。 " 沈 阳 大 学 课程设计说明书 NO.3 " " "(h)8086/8088标准主频为5MHz,8086/8088-2主频为8MH【3】。 " "(i)支持单处理器或多处理器系统工作。 " "(2)8086CPU寄存器结构 " "8086CPU中有14个16位的寄存器,其中有4个16位的通用寄存器,2个16位指针寄存器," "2个16位变址寄存器,1个16位指令指针及1个16位标志寄存器【8】。 " "通用寄存器包括累加器AX,基址寄存器BX,计数寄存器CX,数据寄存器DX四个寄存" "器,位于CPU的EU中,每个数据寄存器可存放16位操作数, 也可拆成两个8位寄存 " "器,用来存放8位操作数。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值