汇编题 实现清屏,前景变色,背景变色,滚动一行

; 1.清屏
; 2.前景变色
; 3.背景变色
; 4.滚动一行
assume cs:code

code segment
start:
	mov ah,1   ;功能号
	mov al,1001b  ;颜色选项
	call text
	mov ax,4c00h
	int 21h
	
text:
	jmp short srt
	num	dw sub1,sub2,sub3,sub4
srt:
	push bx
	cmp ah,3
	ja to
	mov bl,ah 
	mov bh,0
	add bx,bx
	call word ptr num[bx]
to:
	pop bx
	ret
		
sub1:
	push bx
	push si
	push cx
	push ds
	
	mov bx,0b800h
	mov ds,bx
	mov si,0
	mov cx,2000
	sub1s:
		mov byte ptr ds:[si],' '
		add si,2
		loop sub1s
	
	pop ds
	pop cx
	pop si
	pop bx
	ret
	
sub2:
	push bx
	push si
	push cx
	push ds
	
	mov bx,0b800h
	mov ds,bx
	mov si,1
	mov cx,2000
	sub2s:
		and word ptr ds:[si],11111000b
		or ds:[si],al
		add si,2
		loop sub2s
			
		pop ds
		pop cx
		pop si
		pop bx
		ret

sub3:           
	push bx
	push si
	push cx
	push ds
	
	mov cl,4
	shl al,cl
	mov bx,0b800h
	mov ds,bx
	mov si,0
	mov cx,2000
	sub3s:
		and word ptr ds:[si],10001111b
		or ds:[si],al
		add si,2
		loop sub3s
	
	pop ds
	pop cx
	pop si
	pop bx
	ret
		
sub4:
	push bx
	push es
	push si
	push di
	push cx

	mov ax,0b800h
	mov ds,ax
	mov es,ax
	mov si,160
	mov di,0
	cld
	mov cx,24
	sub4s:
		push cx
		mov cx,160
		rep movsb
		pop cx
		loop sub4s
	
	mov cx,80
	mov si,0
	sub4s1:
		mov byte ptr es:[160*24+si],' '
		add si,2
		loop sub4s1
		
	pop cx
	pop di
	pop si
	pop es
	pop bx
	ret
code ends
end start

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值