⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 drawbuliding.asm

📁 汇编语言程序
💻 ASM
字号:

	
	DATAS SEGMENT
    num dw ?
    num1 dw ?
    num2 dw ?;此处输入数据段代码  
DATAS ENDS

STACKS SEGMENT
    ;此处输入堆栈段代码
STACKS ENDS

CODES SEGMENT

main proc far   
    ASSUME CS:CODES,DS:DATAS,SS:STACKS

    MOV AX,DATAS
    MOV DS,AX
    
    mov ah,0
    mov al,12h
    int 10h
    
    call clean
    ;call bottomline         if necessary
    call building
    call floor
    call window
    call frontdoor
    
    
    MOV AH,4CH
    INT 21H
main endp    

clean proc near    
    mov ax,0600h
    mov bh,07
    mov cx,0
    mov dx,184fh
    int 10h
clean endp

bottomline proc near        
    mov cx,0
    mov dx,399
back:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc cx
	cmp cx,639
	jnz back
bottomline endp		    ;此处输入代码段代码

building proc near
	mov cx,69
	mov dx,29
back1:					;top line
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc cx
	cmp cx,599
	jnz back1
	mov cx,69
	inc dx
	cmp dx,39
	jnz back1
						;left line
	mov cx,69
	mov dx,39
back2:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc dx
	cmp dx,399
	jnz back2
	mov dx,39
	inc cx
	cmp cx,79
	jnz back2
						;right line
	mov cx,589
	mov dx,39
back3:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc dx
	cmp dx,399
	jnz back3
	mov dx,39
	inc cx
	cmp cx,599
	jnz back3
	
building endp
	
window proc near		;windows
	mov cx,130			;the first floor windows
	mov dx,309
backfirstfloor:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc dx
	cmp dx,369
	jnz backfirstfloor
	mov dx,309
	add cx,51
	cmp cx,589
	jnz backfirstfloor
	
	mov cx,130
	mov dx,309	
	mov num,232
backfirstfloor1:	
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc cx
	cmp cx,num
	jnz backfirstfloor1
	add num,153
	add cx,51
	cmp num,691
	jnz backfirstfloor1
	mov cx,130
	mov dx,369
	mov num,232
backfirstfloor2:	
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc cx
	cmp cx,num
	jnz backfirstfloor2
	add num,153
	add cx,51
	cmp num,691
	jnz backfirstfloor2
						;the windows of the second	floor
	mov cx,130			
	mov dx,189
backfirstfloor5:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc dx
	cmp dx,249
	jnz backfirstfloor5
	mov dx,189
	add cx,51
	cmp cx,589
	jnz backfirstfloor5
	
	mov cx,130
	mov dx,189	
	mov num,232
backfirstfloor4:	
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc cx
	cmp cx,num
	jnz backfirstfloor4
	add num,153
	add cx,51
	cmp num,691
	jnz backfirstfloor4
							 					
	mov cx,130			;the third floor windows
	mov dx,69
backfirstfloor6:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc dx
	cmp dx,129
	jnz backfirstfloor6
	mov dx,69
	add cx,51
	cmp cx,589
	jnz backfirstfloor6
	
	mov cx,130
	mov dx,69	
	mov num,232
backfirstfloor7:	
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc cx
	cmp cx,num
	jnz backfirstfloor7
	add num,153
	add cx,51
	cmp num,691
	jnz backfirstfloor7	
						;the platform
	mov cx,110
	mov dx,249
	mov num,252
	mov num1,0
backplatform:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc cx
	cmp cx,num
	jnz backplatform
	add cx,11
	add num,153
	cmp num,711
	jnz backplatform
	mov cx,110
	mov dx,129
	mov num,252
	inc num1
	cmp num1,2
	jnz backplatform
	
	mov cx,110
	mov dx,249
	mov num,249
	mov num1,0
	mov num2,279
backplatform1:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc dx
	cmp dx,num2
	jnz backplatform1
	add cx,153
	mov dx,num
	cmp cx,569
	jnz backplatform1
	mov cx,110
	mov dx,129
	mov num,129	
	mov num2,159
	inc num1
	cmp num1,2
	jnz backplatform1
	
	mov cx,252
	mov dx,249
	mov num,249
	mov num1,0
	mov num2,279
backplatform2:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc dx
	cmp dx,num2
	jnz backplatform2
	add cx,153
	mov dx,num
	cmp cx,864
	jnz backplatform2
	mov cx,252
	mov dx,129
	mov num,129	
	mov num2,159
	inc num1
	cmp num1,2
	jnz backplatform2					
window endp		

floor proc near         ;floors       
    mov cx,79
    mov dx,159
    mov num,169
backfloor:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc cx
	cmp cx,589
	jnz backfloor
	inc dx
	mov cx,79
	cmp dx,num
	jnz backfloor
	add dx,110
	mov cx,79
	mov num,289
	cmp dx,399
	jnz backfloor	
floor endp		    	
	
frontdoor proc near
	mov cx,09
	mov dx,299
backup:					;up things
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc cx
	cmp cx,79
	jnz backup
	mov cx,09
	inc dx
	cmp dx,309
	jnz backup
						;steps
	mov cx,29
	mov dx,369
backstep:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc cx
	cmp cx,79
	jnz backstep
	
	mov cx,09
	mov dx,389
	mov num,399
backstep1:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc dx
	cmp dx,num
	jnz backstep1
	sub dx,20
	sub num,10
	add cx,10
	cmp num,369
	jnz backstep1
	
	mov cx,09
	mov dx,389
	mov num,19
backstep2:
	mov ah,0ch
	mov al,01
	mov bh,0
	int 10h
	inc cx
	cmp cx,num
	jnz backstep2
	mov num,29
	mov dx,379
	cmp cx,29
	jnz backstep2
							;the light
	mov cx,39
	mov dx,312
backlight:
	mov ah,0ch
	mov al,04
	mov bh,0
	int 10h
	inc cx
	cmp cx,49
	jnz backlight
	mov cx,39
	inc dx
	cmp dx,316
	jnz backlight
	
	mov cx,42
	mov dx,309
	mov num,45
	mov num1,cx
backlight1:
	mov ah,0ch
	mov al,4
	mov bh,0
	int 10h
	inc cx
	cmp cx,num
	jnz backlight1
	inc num
	mov cx,num1
	dec num1
	dec cx
	inc dx
	cmp num,47
	jnz backlight1
									
frontdoor endp
	mov ah,08h
	int 21h       
CODES ENDS
	end main

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -