「汇编语言 第 3 版 王爽」- 参考答案:实验 14 访问 CMOS RAM @20210228


	「汇编语言 第 3 版 王爽」- 参考答案:实验 14 访问 CMOS RAM @20210228
[编程语言教程]

参考答案

assume cs:codeseg

codeseg segment
separator:
	db ‘/‘, ‘/‘, ‘ ‘, ‘:‘, ‘:‘
date_index:
	db 9, 8, 7, 4, 2, 0 ; 这几个位置没啥规律,耽误我写循环

start:
	mov ax, cs
	mov ds, ax
	mov si, offset date_index
	mov bp, offset separator

	mov ax, 0B800H
	mov es, ax
	mov di, 0

	mov cx, 6
	loop_s0_start:
		; 提取日期的高位与低位
		push cx
		mov al, ds:[si]
		out 70H, al
		in al, 71H
		mov ah, al
		mov cl, 4
		shr ah, cl 			; 高位
		add ah, 30H
		and al, 00001111B 	; 地位
		add al, 30H
		pop cx

		; 显示日期
		mov dh, 2			; 用绿色,辨识度高
		mov dl, ah			; 显示十位
		mov es:[di], dx
		mov dl, al			; 显示各位
		mov es:[di+2], dx

		; 显示分割符号
		cmp cx, 1			; 最后循环没有分割符号显示,直接完成即可
		je loop_s0_end
		mov dl, ds:[bp]
		mov es:[di+4], dx

		add si, 1
		add bp, 1
		add di, 6
		loop loop_s0_start
	loop_s0_end:

	mov ax, 4C00H
	int 21H

codeseg ends

end start
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » 「汇编语言 第 3 版 王爽」- 参考答案:实验 14 访问 CMOS RAM @20210228