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

📄 1.asm

📁 用win32汇编语言编写的 包括界面设计的 汇编程序编辑和编译运行
💻 ASM
字号:
.model small
.386
.stack 100
.code 
start:
    JMP Initialize
    time  dw  10     ;set time for waiting
    date1 dw ?
DO proc far
	push ax
	push ds
	push dx
	push es
	push di
	mov ax,@code
	mov ds,ax 
	
        sti     ;开中断
	dec time
	jnz exit
;/////动画////////////////////////////////////////////////////////////
   L:       mov     ax,0013h
       int     10h
       mov     ax,0a000h
       mov     es,ax              
       
       mov     di,4800
       mov     ah,0
      L1:  
        mov cx,50000
        delay:
        mov al,0
        loop delay
        inc ah
	inc di
	mov es:[di],ah
	in al,64H
	and al,01H
        jne  T
cmp di,6400
jne L1

mov     di,14400
       mov     ah,0
      L2:  
        mov cx,50000
        delay1:
        mov al,0
        loop delay1
        inc ah
	inc di
	mov es:[di],ah
	in al,64H
	and al,01H
jne  T
cmp di,16000
jne L2

mov     di,24000
       mov     ah,0
      L3:  
        mov cx,50000
        delay2:
        mov al,0
        loop delay2
        inc ah
	inc di
	mov es:[di],ah
	in al,64H
	and al,01H
jne  T
cmp di,25600
jne L3

mov     di,33600
       mov     ah,0
      L4:  
        mov cx,50000
        delay3:
        mov al,0
        loop delay3
        inc ah
	inc di
	mov es:[di],ah
	in al,64H
	and al,01H
jne  T
cmp di,35200
jne L4





       mov     di,43200
       mov     ah,0
      L6:  
        mov cx,50000
        delay5:
        mov al,0
        loop delay5
        inc ah
	inc di
	mov es:[di],ah
	in al,64H
	and al,01H
        jne  T
cmp di,44800
jne L6
jmp L
       




 ;/////////////////////////////////////////////////////////    

T:	mov  ax,date1     ;重置时间 
	mov   time ,ax
        mov ax,0003H
         int 10H
	exit:
            in al,64H       ;判断是否有键盘输入
	and al,01H
         je  exit1
        mov  ax,date1       ;重置时间 
	mov   time ,ax
exit1:
        cli                ;关中断
        pop di
	pop es
	pop dx
	pop ds
	pop ax
	iret
	DO endp 

Initialize:                 ;初始化
        mov ax,@code
	mov ds,ax
        lea  dx,DO        ;重置1c中断
	mov  ax,seg DO
	mov  ds,ax
	mov  al,1cH
	mov  ah,25H
	int 21H
	mov ax,@code
	mov ds,ax	
        in  al,21H             ;允许中断屏蔽
	and al,11111110b
	out 21H,al
        sti
	mov ax,time           ;时间计算
        mov dx,18
	mul dx
	mov time,ax
	mov date1,ax
        MOV DX, OFFSET Initialize
        INT 27H                    ;驻留并退出
 
        end start

⌨️ 快捷键说明

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