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

📄 e2.asm

📁 一个汇编语言程序
💻 ASM
字号:
data segment
out1 db 'Error.$'
out2 db'Press any key to exit or input 1 to continue .$'
out3 db 'please input a~z.$'
data ends
code segment
assume cs:code,ds:data
start:  
	mov ax,data
	mov ds,ax
;输入并判断是否是字母
str:	lea dx,out3
        mov ah,09h
        int 21h
        mov ah,01h;
	int 21h
        cmp al,61h
	jl error
	cmp al,7ah
	jg error  
        mov bl,al
;回车换行
	mov dl ,0dh
	mov ah,02h
	int 21h
	mov dl ,0ah
	mov ah,2
	int 21h
;输出前导字母
	sub bl,01h
        mov cl,bl
        cmp cl,61h
        jb  aa
        mov dl,bl
        mov ah,02h
        int 21h
;输出输入字母
cc:	
        add  bl,01h
        mov cl,bl
        mov dl,bl
	mov ah,2
	int 21h
;输出后续字母
        add  bl,01h
        mov cl,bl
        cmp cl,7ah
        ja bb
        mov dl,bl
        mov ah,2
        int 21h
	jmp exit
;若前导字符不是字母则输出空格
aa:mov al,' '
   mov dl,al
   mov ah,2
   int 21h
   jmp cc
;若后续字符不是字母,则输出空格
bb: mov al,' '
    mov dl,al
    mov ah,2
    int 21h
    jmp exit
;若输入的不是字母,则报错,要求重新输入
error:
lea dx,out1
mov ah,09h
int 21h
jmp str
;若输入字1则继续做,若不是,则返回dos 

exit:
       lea dx,out2
	mov ah,09h
	int 21h
        mov ah,1
        int 21h
        sub al,1
        jz str
        mov ah,4ch
        int 21h
        code ends
	end start

⌨️ 快捷键说明

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