汇编课程设计

发布 2022-10-01 07:08:28 阅读 3300

湖南农业大学课程设计报告。

学院:信息科学与技术学院班级:计算机科学与技术2班

姓名:陈小湾学号:200841842226

课程设计报告题目:时钟显示程序。

课程名称:微机原理与接**术。

评阅成绩:评阅意见:

成绩评定教师签名:

日期: 年月日。

第一部分:任务与要求。

利用芯片8253和8259a完成时钟显示程序,显示时间为系统时间,且能逐秒刷新,实时显示秒,分,时,日,月,年。

第二部分:分析与规划。

中断控制器intel8259a可以管理8级中断,对应8个中断请求引脚:ir0~ir7,每一级中断都可单独被屏蔽或允许。多个8259a芯片级联可最多扩展至64级中断。

8259a在中断响应总线周期,可为每级中断提供相应的中断向量号。

pc机的配置信息以及实时时钟被保存在cmos ram芯片中,cmos ram有64个字节容量,以8为i/o接口形式与处理器连接,通过两个i/o地址访问。访问cmos ram的内容时,需要首先向i/o地址70h输出要访问的字节编号,然后用i/o地址71h读写。

cmos ram的9,8,7,4,2,0号字节单元依次存放着年,月,日,时,分,秒数据,本程序将它们读出显示。这些数据的编码采用压缩bcd码,所以使用十六进制数值显示子程序disphb。年月日数据中间用“-”分隔,时分秒数据中间用“:

”分隔。

pc机系统的irq0(向量号为08h)中断请求来自定时器,每隔55ms产生一次。dos系统利用它实现日时钟计时功能。

第三部分:实现过程(付**)

in dos

include

.dataintmsg byte '!13,10,0

counter byte 0 ;中断次数记录单元。

.codestart:

mov ax,@data

mov ds,ax

mov ax,3508h ;获取原中断向量。

int 21h

push es ;保存原中断向量(利用堆栈)

push bx

cli ;关中断。

push ds ;设置新中断向量

mov ax,seg new08h

mov ds,ax

mov dx,offset new08h

mov ax,2508h

int 21h

pop ds

in al,21h ;读出imr

push ax ;保存原imr内容。

and al,0feh ;允许irq0,其他不变。

out 21h,al ;设置新imr内容

mov counter,0 ;设置中断次数初值。

sti ;开中断。

;主程序完成中断服务程序设置,可以处理其他事务。

start1: cmp counter,18 ;本例的主程序仅循环等待中断。

jb start1 ;中断18次退出。

cli ;关中断。

pop ax ;恢复imr

out 21h,al

pop dx ;恢复原中断向量。

pop ds

mov ax,2508h

int 21h

sti ;开中断。

exit 0

; 中断服务程序。

new08h proc

sti ;开中断。

push ax ;保护寄存器。

push si

push ds

mov ax,@data ;外部随机产生中断,ds也不确定,所以必须设置ds

mov ds,ax

;inc counter ;中断次数加1

;mov si,offset intmsg ;显示信息。

mov al,9 ; al=9(准备从9号单元获取年代数据)

out 70h,al ; 从70h的i/o地址输出,选择cmos ram的9号单元。

in al,71h ; 从71h的i/o地址输入,获取9号单元的内容,保存在al

call disphb ; 显示al内容,即年代。

mov al显示分隔符“-”

call dispc

mov al,8 ; al=8(从8号单元获取月份数据)

out 70h,al

in al,71h

call disphb ; 显示月份。

mov al显示分隔符“-”

call dispc

mov al,7 ; al=7(从7号单元获取日期数据)

out 70h,al

in al,71h

call disphb ; 显示日期。

mov al显示分隔符“-”

call dispc

mov al,4 ; al=4(从4号单元获取时针数据)

out 70h,al

in al,71h

call disphb ; 显示时。

mov al显示分隔符“-”

call dispc

mov al,2 ; al=2(从2号单元获取分针数据)

out 70h,al

in al,71h

call disphb ; 显示分。

mov al显示分隔符“-”

call dispc

mov al,0 ; al=0(从0号单元获取秒针数据)

out 70h,al

in al,71h

call disphb ; 显示秒。

mov al,0dh

call dispc

mov al,20h ;发送eoi命令。

out 20h,al

pop ds ;恢复寄存器。

pop si

pop ax

iret ;中断返回。

new08h endp

end start

第四部分:实现的效果。

第五部分:结束语。

汇编课程设计

直流电机调速系统设计。摘要。脉宽调制的全称为 pulse widthmodulator 简称pwm 直流电机调速器就是调节直流电动机速度的设备,由于直流电动机具有低转速大力矩的特点,是交流电动机无法取代的,因此调节直流电动机速度的设备 直流调速器,由于它的特殊性能 常被用于直流负载回路中 灯具调光或...

汇编课程设计

汇编语言课程临近结束时,将利用实验课和理论课最后阶段时间 大约14周开始,具体安排听通知 让同学们进行题目的答辩。分组 每5到6人一组,推选出组长。每组同学选一组题目,且任两组同学不得选重复组的题目,两班同学不要选相同组题目。请班长在第三周周一前将分组及选题的汇总excel电子版发到我邮箱。选第一组...

汇编课程设计

目录1 系统实现的目标 3 2 系统实现方案 3 3 详细设计 3 4 具体的开发方法 5 5 调试及分析结果。参考文献 14 用汇编实现成绩管理系统,首先必须有一个友好的界面,界面的设计是本系统的重要的组成部分,利用int10的显示功能,显示字符,实现界面设计。其次是光标的定位 int10和int...