汇编:实验14:从CMOS读取并显示时间

Posted 小杰666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了汇编:实验14:从CMOS读取并显示时间相关的知识,希望对你有一定的参考价值。

从 CMOS RAM 读取时间并显示到屏幕。

代码:

; 显示CMOS中当前日期时间
assume cs:code
code segment
src:    
    db 9,8,7,4,2,0 ; 年月日时分秒的地址
dst:    
    db 'yy/mm/dd hh:mm:ss',0

start:
    mov ax,cs
    mov ds,ax
    mov si,offset src
    mov di,offset dst
    mov cx,6
s:
    mov dx,cx
    mov al,[si]
    out 70h,al ; 70h为地址端口
    in al,71h ; 71h为数据端口
    mov ah,al
    mov cl,4
    shr ah,cl ; 右移4位,ah为十进制的十位数
    and al,00001111b ; al为十进制的个位数
    add ah,30h
    add al,30h ; 数值转字符形式
    xor ah,al
    xor al,ah
    xor ah,al ; 交换ah al的值
    mov [di],ax
    add di,3
    inc si
    mov cx,dx
    loop s

    mov ax,0b800h
    mov es,ax
    mov di,0
    mov si,offset dst
s1:
    mov ch,0
    mov cl,[si]
    jcxz ok
    mov ch,2 ; 绿色字
    mov es:[di],cx
    inc si
    add di,2
    jmp s1
ok:
    mov ax,4c00h
    int 21h
code ends
end start

结果:

以上是关于汇编:实验14:从CMOS读取并显示时间的主要内容,如果未能解决你的问题,请参考以下文章

汇编读取CMOS RAM端口程序

汇编_移位指令_CMOS RAM读取月份

汇编试验十四:访问CMOS RAM

汇编语言程序设计题

汇编语言内存单元地址的算法

实验三