您的位置:首页 > 编程语言

可编程计数器8253

2012-02-15 09:56 204 查看
;*************************;

;* 8253方式0计数器实验 *;

;*************************;

io8253a equ 283h

io8253b equ 280h

code segment

assume cs:code

start:

mov dx,283h ; 设置8253通道0为工作方式2,二进制计数

mov al,14h

out dx,al

mov dx,280h

mov al,0fh

out dx,al ; 送计数初值为0FH

lll: mov al,80h ;计数器0锁存命令

mov dx,283h

out dx,al

mov dx,280h

in al,dx ; 读计数初值

call disp ; 调显示子程序

push dx

mov ah,06h

mov dl,0ffh

int 21h

pop dx

jz lll

mov ah,4ch

int 21h ; 退出

disp proc near ;显示子程序

push dx

mov dx,280h; 首先取低四位

in al,dx

and al,0fh

mov dl,al

cmp dl,09 ; 判断是否<=9

jle num ;若是则为'0'-'9',ASCII码加30H

add dl,07 ; 否则为'A'-'F',ASCII码加37H

num: add dl,30h

mov ah,02h

int 21h; 显示

mov dl,13

int 21h ; 加回车符

mov dl,10

int 21h ; 加换行符

pop dx

ret ;子程序返回

disp endp

code ends

end start
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: