实验14代码,如何实现年份显示
我已经显示了年份的尾数, 但是不知道如何全部显示出来,望大神请教!
assume cs:code
code segment
s0 db 9,8,7,4,2,0,'
start:
mov ax,cs
mov ds,ax
mov si,offset s0
mov bx,0b800h
mov es,bx
mov di,7d0h
s:
mov al,
out 70h,al
in al,71h
mov ah,al
mov cl,4
shr ah,cl
and al,00001111b
add ah,30h
add al,30h
mov es:,ah
mov es:,al
mov byte ptr es:,'/'
add di,6
inc si
cmp byte ptr ,'
je ok
jmp s
ok: mov ax,4c00h
int 21h
code ends
end start
读取cmos时间不好吗?
人造人 发表于 2020-4-5 15:50
读取cmos时间不好吗?
是读取到了.
但是年份的读取没有更好的显示出来,因为年份是四位数的,而我代码中只显示两位数的;
想要在第一次循环中可以显示出年份的四位数值出来,后面的只显示两位数的值。 课程设计2中有显示时间日期的要求,你可以看看我的代码
https://fishc.com.cn/thread-158246-1-1.html
read_time:
push ax
push bx
push cx
mov bx, offset time
mov cx, 4
; 读取秒
mov al, 0
out 70h, al
in al, 71h
mov ah, al
and al, 0fh
shr ah, cl
add al, '0'
add ah, '0'
mov , al
mov , ah
; 读取分
mov al, 2
out 70h, al
in al, 71h
mov ah, al
and al, 0fh
shr ah, cl
add al, '0'
add ah, '0'
mov , al
mov , ah
; 读取时
mov al, 4
out 70h, al
in al, 71h
mov ah, al
and al, 0fh
shr ah, cl
add al, '0'
add ah, '0'
mov , al
mov , ah
; 读取日
mov al, 7
out 70h, al
in al, 71h
mov ah, al
and al, 0fh
shr ah, cl
add al, '0'
add ah, '0'
mov , al
mov , ah
; 读取月
mov al, 8
out 70h, al
in al, 71h
mov ah, al
and al, 0fh
shr ah, cl
add al, '0'
add ah, '0'
mov , al
mov , ah
; 读取年
mov al, 9
out 70h, al
in al, 71h
mov ah, al
and al, 0fh
shr ah, cl
add al, '0'
add ah, '0'
mov , al
mov , ah
; 读取世纪
mov al, 32h
out 70h, al
in al, 71h
mov ah, al
and al, 0fh
shr ah, cl
add al, '0'
add ah, '0'
mov , al
mov , ah
pop cx
pop bx
pop ax
ret
人造人 发表于 2020-4-5 18:17
课程设计2中有显示时间日期的要求,你可以看看我的代码
https://fishc.com.cn/thread-158246-1-1.html
非常感谢!
页:
[1]