狂潮丶 发表于 2013-8-5 22:13:02

Assembly language 实验14

实验14
assume cs:code, ds:data

data segment
    date_time db '00/00/00 00:00:00', '$'; 显示时间格式“年/月/日 时:分:秒”
    s0 db 9, 8, 7, 4, 2, 0               ; CMOS中时间信息的存放单元
data ends

code segment
start:
    mov ax, data
    mov ds, ax
    mov si, offset s0      ; (ds:si)为CMOS中时间信息存放单元地址
    mov es, ax
    mov di, offset date_time ; (es:di)为待显示时间地址
   
    mov cx, 6
time:
    push cx
    mov al,
    out 70H, al
    in al, 71H               ; 从CMOS相应单元读出信息
   
    mov ah, al
    mov cl, 4
    shr ah, cl               ; ah存放十位数字
    add ah, 30H
    and al, 0fH            ; al存放个位数字
    add al, 30H
   
    mov es:, ah
    mov es:, al
    inc si
    add di, 3
   
    pop cx
    loop time
   
    mov ah, 2               ; 置光标
    mov bh, 0               ; 第0页
    mov dh, 5               ; 行号
    mov dl, 12                ; 列号
    int 10H
   
    mov ax, data
    mov ds, ax
    mov dx, offset date_time; ds:dx指向待显示时间地址
    mov ah, 9
    int 21H
   
    mov ax, 4c00H
    int 21H
code ends
end start


**** Hidden Message *****

生活! 发表于 2013-12-29 19:48:31

刚学到这!

huainian 发表于 2014-6-11 07:32:05

谢谢分享!!!!!!!!!!

sunshining 发表于 2016-6-13 17:19:04

参考参考

JessonG 发表于 2018-2-23 18:53:10

{:10_333:}

lqc358 发表于 2018-2-24 22:50:33

学习一下!

萨科纳先生 发表于 2019-12-24 21:24:30

{:5_91:}

LPY0204 发表于 2023-1-13 21:04:30

6

zhongjiale 发表于 2023-8-24 16:10:54

1
页: [1]
查看完整版本: Assembly language 实验14