汇编语言 实验14(王爽 第三版) 访问CMOS RAM

实验14 访问CMOS RAM
编程,以“年/月/日 时:分:秒”的格式,显示当前的日期、时间。

 assume cs:code
data segment

data ends

code segment
	s1:		
	start:	mov al,9h
			mov ah,0
			mov cx,6
			mov bx,0b800h
			mov es,bx
			mov si,160*12+30*2			

	s:	push ax
		push cx
		
		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 byte ptr es:[si],ah
		mov byte ptr es:[si+2],al
		
		pop cx
		cmp cx,5
		jnb gang
		cmp cx,4
		je kong
		cmp cx,1
		ja mao
		pop ax				;这里显示完最后一个字符,就会跳到这里,要把ax出栈,再跳到ok,否则无限循环时栈中会不断增加内容,在此程序中会把代码段覆盖,导致程序卡死
		jmp ok
gang:	mov al,2fh
		mov byte ptr es:[si+4],al
		pop ax
		sub al,1
		jmp ok						;显示斜杠
		
kong:	mov al,20h
		mov byte ptr es:[si+4],al
		pop ax
		sub al,3
		jmp ok						;显示空格
		
mao:	mov al,3ah
		mov byte ptr es:[si+4],al
		pop ax
		sub al,2
		jmp ok						;显示冒号
		
	ok:	add si,6
		loop s
		
		loop s1						;无限循环
		
	mov ax,4c00h
	int 21h
code ends
end start

实验截图:(一直变化)
在这里插入图片描述

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值