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

📄 birdfly.asm

📁 一个简单的小鸟飞 从左上到右下?桓黾虻サ男∧穹?从左上到右下?桓黾虻サ男∧穹?从左上到右下
💻 ASM
字号:
;程序开始,创建数据段,赋值. 
DATA SEGMENT
INFO1 DB 0DH,0AH,'INPUT 1,OR2:(1:flyin bird ,2:exit) $'
BIRD   DB '\',7,'/',7,'_',7,'_',7 ;小鸟的字符图形表 ,92为\,47为/,95为_,7为颜色白色 
DATA ENDS               ;数据段结束 
;
STACK SEGMENT STACK     ;创建200字节的栈段 用0填充 
DB 200 DUP(0)
STACK ENDS
;
CODE SEGMENT            ;定义代码段 
ASSUME CS:CODE,DS:DATA,SS:STACK       
                        ;设定段关联 
;代码段主程序开始
START: MOV AX,DATA     ;定义数据段地址 
MOV DS,AX
;
MOV AH,0
MOV AL,4
INT 10H
;
LEA DX,INFO1        ;在显示器上显示字符串提示信息
MOV AH,9
INT 21H
;
MOV AH,0            ;从键盘读取字符到AL寄存器
INT 16H
CMP AL,31H          ;比较AL是否等于1
JNE A               ;如果不是1就转到A处 
CALL XIAO           ;如果是1就转到子程序XIAO处 
A: CMP AL,32H       ;比较AL是否等于2
JNE START           ;如果也不等于2就回到程序起点处 如果是就继续 
MOV AH,4CH          ;终止当前程序并返回调用程序
INT 21H             ; 
;
CLEAR MACRO         ;清屏宏定义
MOV AH,0
MOV AL,4
INT 10H
ENDM
;
DLY PROC NEAR ;延时子程序
PUSH CX
PUSH DX
MOV DX,10000       ;这个值越大,速度越慢 
DL1: MOV CX,0 
DL2: LOOP DL2
DEC DX
JNZ DL1
POP DX
POP CX
RET
DLY ENDP
;
XIAO PROC      ;小鸟子程序入口 
PUSH DS        ;数据段入栈 
MOV AX,0       ;AX归零 
PUSH AX        ;AX进栈 
MOV AX,DATA    ;设定代码段 
MOV DS,AX
CLEAR          ;清屏

MOV DH,0      ;设小鸟初始位置Y轴位置   最左上角为 DH=0,DL=0         小鸟的位置就靠 
MOV DL,0      ;设小鸟初始位置X轴位置   最右下角为 DH=24,DL=79       改变这两个值

BEGIN:        ;开始显示小鸟 
MOV SI,2      ;
MOV CX,1      ;字符重复次数为1 
;
LEA DI,BIRD   ;DI指向小鸟字符表的首字母
;
DISP: CMP DH,24    ;设定结束情况为移动到X=25位置就执行EXIT1退出 
JAE EXIT1

MOV AH,2      ;设置光标位置
INT 10H

MOV AH,9      ;显示小鸟字符图形 
MOV AL,[DI]
MOV BL,[DI+1]
INT 10H

inc dl

MOV AH,2      ;设置光标位置
INT 10H

MOV AH,9      ;显示小鸟字符图形 
MOV AL,[DI+2]
MOV BL,[DI+3]
INT 10H 

CALL DLY ;延时

dec dl
MOV AH,2      ;设置光标位置
INT 10H

MOV AH,9      ;小鸟消失 
MOV AL,' '
MOV BL,04
INT 10H

inc dl
MOV AH,2      ;设置光标位置
INT 10H
MOV AH,9      ;小鸟消失 
MOV AL,' '
MOV BL,04
INT 10H

inc dh    ;小鸟Y坐标加1 

ADD DI,4
DEC SI
JNZ DISP
JMP BEGIN

EXIT1: RET  ;
XIAO ENDP   ;小鸟子程序结束 

CODE ENDS         ;代码段结束 
END START         ;主程序结束 

⌨️ 快捷键说明

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