汇编语言学习:实验十四
程序员文章站
2022-03-13 10:47:05
...
编程:以“年/月/日 时:分:秒”的格式,显示当前的日期、时间。
注意: CMOS RAM中存储着系统的配置信息,除了保存时间信息的单元外,不要向其他单元中写入内容,否则将引起一些系统错误
上代码:
assume cs:code
code segment
unit:
db 9,8,7,4,2,0
return:
dw 0
start:
mov ax,cs
mov ds,ax
mov si,offset unit
mov di,0
mov dl,47
mov cx,6
s:
mov al,ds:[si]
call show_what
inc si
cmp si,3
jz null
cmp si,4
jnb hour
jmp year
null:
mov dl,0
jmp year
hour:
mov dl,58
cmp si,6
je null
year:
call show_how
add di,6
loop s
mov ax,4c00h
int 21h
show_what:
push cx
push ax
push si
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 si,offset return
mov ds:[si],ax
pop si
pop ax
pop cx
ret
show_how:
push bx
push ax
push dx
push di
push si
mov bx,0b800h
mov es,bx
mov si,offset return
mov ax,ds:[si]
mov byte ptr es:[160*12+di],ah
mov ah,2
mov byte ptr es:[160*12+di+1],ah
mov byte ptr es:[160*12+2+di],al
mov byte ptr es:[160*12+2+di+1],ah
mov byte ptr es:[160*12+4+di],dl
mov byte ptr es:[160*12+4+di+1],ah
pop si
pop di
pop dx
pop ax
pop bx
ret
code ends
end start
运行:
上一篇: 汇编语言学习
下一篇: 数据结构与算法(java)——栈和队列
推荐阅读
-
C++_Primer_学习笔记_第十四章(重载运算和类型转换)
-
java学习实验随笔-------如何从键盘输入数据并保存到数组中
-
PHP网页游戏学习之Xnova(ogame)源码解读(十四)
-
linux 学习第十四天(Apache安装、基于ip、基于域名、基于端口配置)
-
java学习实验随笔-------如何从键盘输入数据并保存到数组中
-
Linux学习笔记(十四)磁盘管理(二):格式化、挂载以及Swap分区
-
词法分析---基于Asp.NET(实验二学习笔记)
-
Python学习日记(二十四) 继承
-
Python学习日记(十四) 正则表达式和re模块
-
PHP网页游戏学习之Xnova(ogame)源码解读(十四)