西北师范大学《大学计算机基础》实验报告
西北师范大学《大学计算机基础》实验报告
西北师范大学《大学计算机基础》实验报告
西北师范大学《大学计算机基础》实验报告
西北师范大学《大学计算机基础》实验报告
西北师范大学《大学计算机基础》实验报告
西北师范大学《大学计算机基础》实验报告
西北师范大学《大学计算机基础》实验报告
西北师范大学《大学计算机基础》实验报告
西北师范大学《大学计算机基础》实验报告
西北师范大学《大学计算机基础》实验报告
西北师范大学《大学计算机基础》实验报告
中山大学 实验报告
SUN YAT-SEN UNIVERSITY
院(系) 学 号 审批
专 业 实验人
实验题目:实验八:交通灯控制
四.实验流程图
五、实验程序:
data segment
io8255a equ 28ah
io8255b equ 28bh
io8255c equ 288h
io8253a equ 280h
io8253b equ 281h
io8253c equ 283h
led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh
mesg1 db 0dh,0ah,'Input a num (1--9),other key is exit:','$'
mesg2 db 0dh,0ah,'Error!','$'
second db ?
tl db ?
now db ?
data ends
code segment
assume cs:code,ds:data
start:mov ax,data
mov ds,ax
mov dx,io8255b ;设8255为A口输出,C口输入
mov ax,89h
out dx,al
mov dx,io8253c ;设8253计数器0为方式3
mov al,36h
out dx,al
mov dx,io8253a
mov ax,10000 ;写入计数器0初值10000
out dx,al
mov al,ah
out dx,al
mov ax,cs
mov ds,ax
mov dx,offset int3
mov ax,250bh
int 21h ;设置IRQ3的中断矢量
in al,21h ;读中断屏蔽寄存器
and al,0f7h ;开放IRQ3中断
out 21h,al
mov ax,data
mov ds,ax
input:mov dx,offset mesg1 ;显示提示信息
mov ah,9
int 21h
mov ax,0c01h ;清空缓存并读入一个字符
int 21h
cmp al,'1' ;检测是否为1--9
jl exit
cmp al,'9'
jg exit
jmp next
exit: mov dx,2a8h
mov al,0
out dx,al
mov dx,io8255c
mov al,0
out dx,al
mov ah,4ch
int 21h
next: sub al,30h ;字符经过处理后为绿灯亮的秒数,存入second的第二位
mov bl,10
mul bl
sub al,5
mov second,al
mov tl,al
sti ;开中断
ld: mov al,second ;亮灯1
mov ah,0
mov cx,ax
mov dx,2a8h
mov al,81h
out dx,al
mov now,al
l1: call delay
mov ah,0bh
int 21h
cmp al,0ffh
jz input
loop l1
mov dx,2a8h ;亮灯2
mov al,82h
out dx,al
mov now,al
mov cx,5
l2: mov al,tl
mov bx,offset led ;使BX指向段码管首址
xlat
mov dx,io8255c
out dx,al
call delay
dec tl
mov ah,0bh
int 21h
cmp al,0ffh
jz input
loop l2
mov al,5
mov tl,al
mov dx,io8255c ;关数码管
mov al,0
out dx,al
mov al,second ;亮灯3
mov ah,0
mov cx,ax
mov dx,2a8h
mov al,24h
out dx,al
mov now,al
l3: call delay
mov ah,0bh
int 21h
cmp al,0ffh
jnz next1
jmp input
next1:loop l3
mov dx,2a8h ;亮灯4
mov al,44h
out dx,al
mov now,al
mov cx,5
l4: mov al,tl
mov bx,offset led ;使BX指向段码管首址
xlat
mov dx,io8255c
out dx,al
call delay
dec tl
mov ah,0bh
int 21h
cmp al,0ffh
jnz next2
jmp input
next2:loop l4
mov al,5
mov tl,al
mov dx,io8255c ;关数码管
mov al,0
out dx,al
jmp ld
int3: push ax
push cx
push dx
push ds
mov dx,io8255c ;关数码管
mov al,0
out dx,al
mov dx,2a8h ;亮两个红灯
mov al,84h
out dx,al
che: mov dx,io8255a ;检查是否关闭紧急开关
in al,dx
and al,40h
cmp al,40h
jz che
mov dx,2a8h ;恢复之前的led状态
mov al,now
out dx,al
pop ds
pop dx
pop cx
pop ax
mov al,20h
out 20h,al
sti
iret
delay proc near ;延时子程序
mov dx,io8253c
mov al,70h ;设计数器1为工作方式0
out dx,al
mov dx,io8253b
mov ax,100 ;写入计数器1初值
out dx,al
mov al,ah
out dx,al
ag : mov dx,io8255a
in al,dx
and al,80h
cmp al,80h
jnz ag
yel: in al,dx
and al,20h
cmp al,20h
jnz back
mov al,now
mov ah,0
push ax
call yellow
pop ax
mov now,al
mov dx,2a8h
out dx,al
back: ret
delay endp
yellow proc near
bg: mov al,42h
mov now,al
mov dx,2a8h
out dx,al
mov dx,io8253b
mov ax,50 ;写入计数器1初值
out dx,al
mov al,ah
out dx,al
mov dx,io8255a
ag2: in al,dx
and al,80h
cmp al,80h
jnz ag2
mov al,0
mov now,al
mov dx,2a8h
out dx,al
mov dx,io8253b
mov ax,50 ;写入计数器1初值
out dx,al
mov al,ah
out dx,al
mov dx,io8255a
ag3: in al,dx
and al,80h
cmp al,80h
jnz ag3
in al,dx
and al,20h
cmp al,20h
jz bg
ret
yellow endp
code ends
end start
大学计算机基础课程实验报告手册学院年级专业姓名学号2220xx319xx20xx任课教师上机地点以上由学生填写实验教师签字西南大学…
大学计算机基础教学班级课程教师实验报告学号姓名实验辅导教师西南交通大学20xx年9月大学计算机基础实验报告实验一微机基本操作与上网…
五实验报告学号姓名班级实验时间年月日实验报告图像生成与图像处理一填写下载图像的相关数据二查看左侧的图像请填写相应的图像编码三计算机…
广东金融学院实验报告课程名称:大学计算机Ⅰ柠檬,lemon,那个和柠檬一样单纯的女生的名字,她说,她喜欢柠檬的苦涩与酸甜,就像,她…
西北师范大学大学计算机基础实验报告20xx级西北师范大学大学计算机基础实验报告20xx级西北师范大学大学计算机基础实验报告20xx…
电子信息工程学系实验报告适用于计算机课程课程名称计算机基础训练实验项目名称Word基本操作实验时间班级姓名学号实验目的1掌握文档页…
大学计算机基础课程实验报告第二章中文操作系统WindowsXP思考题1将一个文件删除掉然后清空回收站该文件还可以恢复到原来位置吗答…
大学计算机基础课程实验报告手册学院年级专业姓名学号2220xx319xx20xx任课教师上机地点以上由学生填写实验教师签字西南大学…
大学计算机基础实验报告专业名称学号姓名指导教师20xx年12月20日目录第一章网站主题设计说明111主题内容112设计思路1第二章…