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

📄 char.asm

📁 4.asm…… 响铃程序
💻 ASM
字号:
        .model small
        .stack
        .data
string	db 'Input 16 characters:',0dh,0ah,'$'
buffer1 db 16 dup(0),0dh,0ah,'$'
buffer2 db 16 dup(0),0dh,0ah,'$'
flag	db ?
old     db 0dh,0ah,'The old characters:',0dh,0ah,'$'
changed db 0dh,0ah,'The changed characters:',0dh,0ah,'$'
message db 0dh,0ah,'First place:$'
        .code
        .startup
	mov	ah,9
	lea	dx,string
	int	21h
	lea	si,buffer1
	mov	cx,10h
take1:	mov	ah,1
	int	21h
	mov	[si],al	
	inc	si
	loop	take1

        mov     ah,2h
        mov     dl,0dh
        int     21h
        mov     ah,2h
        mov     dl,0ah
        int     21h
	
	mov	flag,0
        mov     cl,0
	lea	si,buffer1
	lea	di,buffer2
take2:  mov     al,[si]
        cmp     al,'a'
        jb      do
        cmp     al,'z'
        ja      do
        cmp     flag,0
        jnz     next
        mov     flag,1
        mov     bl,cl
next:   sub     al,20h
do:     mov     [di],al
        inc     si
        inc     di
        inc     cl
        cmp     cl,10h
        jnz     take2
	push	bx

        mov     ah,9h
        lea     dx,old
        int     21h
        mov     ah,9h
        lea     dx,buffer1
        int     21h
        mov     ah,9h
        lea     dx,changed
        int     21h
        mov     ah,9h
        lea     dx,buffer2
        int     21h
        mov     ah,9h
        lea     dx,message
        int     21h
        pop     bx
        cmp     bl,9
        ja      other
        add     bl,30h
        jmp     last
other:  add     bl,57h
last:   mov     ah,2h
        mov     dl,bl
        int     21h
        mov     ah,2h
        mov     dl,'H'
        int     21h
        .exit   0
        end

⌨️ 快捷键说明

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