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

📄 ifleap.asm

📁 此程序是微机与接口技术的课程设计源程序
💻 ASM
字号:
;FILENAME: IFLEAP.ASM
;内容:判断年份是否闰年
DATA	SEGMENT    				;定义数据段
INFOM  DB 0DH,0AH,'PLEASE INPUT A YEAR: $'
Y 		DB 0DH,0AH,'THIS IS A LEAP YEAR! $'
N 		DB 0DH,0AH,'THIS IS NOT A LEAP YEAR! $'
W 		DW 0
BUF 	DB 8
        DB ?
        DB 8 DUP(?)
DATA 	Ends

STACK 	SEGMENT STACK
    	DB 200 DUP(0)
STACK 	ENDS

CODE 	SEGMENT
   		ASSUME DS:DATA,SS:STACK,CS:CODE
START:	MOV AX,DATA
      	MOV DS,AX
          
      	LEA DX,INFON  			;在屏幕上显示提示信息
       	MOV AH,9
      	INT 21H

      	LEA DX,BUF    			;从键盘输入年份字符串
      	MOV AH,10
      	INT 21H
          
       	MOV CL, [BUF+1]
     	LEA DI,BUF+2
     	CALL DATACATE
      	CALL IFYEARS
      	JC A1
          
     	LEA DX,N
     	MOV AH,9
    	INT 21H
   		JMP EXIT
A1:   	LEA DX,Y
     	MOV AH,9
      	INT 21H
EXIT: 	MOV AH,4CH
      	INT 21H
 
DATACATE PROC NEAR;
    	PUSH CX;                                                       
       	DEC CX
       	LEA SI,BUF+2
TT1: 	INC SI
      	LOOP TT1
      	;LEA SI,CX[DI]
      	POP CX
     
    	MOV DH,30H
      	MOV BL,10
     	MOV AX,1
L1: 	PUSH AX
      	SUB  BYTE PTR  [SI],DH
      	MUL  BYTE PTR [SI]
      	ADD W,AX
     	POP AX
     	MUL BL
      	DEC SI
      	LOOP L1
      	RET
DATACATE ENDP

IFYEARS PROC NEAR
      	PUSH  BX
       	PUSH  CX
       	PUSH  DX
    	MOV AX,W
      	MOV   CX,AX
       	MOV  DX,0
       	MOV  BX,4
      	DIV  BX
      	CMP  DX,0
     	JNZ  LAB1
       	MOV   AX,CX
       	MOV  BX,100
      	DIV  BX
      	CMP DX,0
      	JNZ  LAB2
      	MOV  AX,CX
      	MOV BX,400
      	DIV  BX
     	CMP  DX,0
      	JZ  LAB2
LAB1: CLC
      	JMP LAB3
LAB2: 	STC
LAB3: 	POP  DX
    	POP  CX
     	POP  BX
       	RET
IFYEARS ENDP
CODE 	ENDS
   		END START

⌨️ 快捷键说明

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