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

📄 findmax1.asm

📁 查找最大的数的汇编程序(有源码),是一个好例子
💻 ASM
字号:
data segment
  M db 'I am a student are you.'
  sum db 80 dup(?)
 count db ?
 count1 db ?
 flag db ?
data ends

code segment
  assume cs:code,ds: data
start:
   mov count1,0
   mov count,0
   mov flag,0
   mov ax,data
   mov ds,ax
   mov si,0
   mov di,0
next:
   cmp M[si],'.'
   jz input1
   cmp M[si],' '
   jz input
   cmp flag,0
   jz next3
   jmp sum1

next3:
mov sum[di],si
sum1:
  mov flag,1
  inc count
  inc si
  jmp next
   
input1:
   mov count1,1
  

input:
    
   mov flag,0
   inc di
   mov al,count
   mov sum[di],al
   mov count,0
   inc di
   inc si
   cmp count1,1
   jz exit
   jmp next





exit: 
 dec di 
 mov cx,di
 mov di,1


mov bl,sum[1]
find:
 inc di
 inc di
 cmp di,cx
 ja exit1
 cmp bl,sum[di]
 jb change1
 jmp find
 
change1:
  xchg bl,sum[di] 
  mov si,di
  mov sum[1],bl  
  inc di
  inc di
  cmp di,cx
  ja exit1
  jmp find

exit1:



mov cx,0
 mov ax,0 
 mov dx,0
 mov bx,0



mov al,sum[1]
cbw
mov cl,10
div cl
mov dh,ah
add al,30H
mov dl,al
mov ah,2
int 21h

add dh,30H
mov dl ,dh
mov ah,2
int 21h

 mov dl,' '
 mov ah,2
 int 21h

dec si
mov cl,sum[1]

mov di,si
mov bl,sum[di]
mov di,bl
next2:
 mov dl,M[di]
 mov ah,2
 int 21h
 inc di
 dec cl
 cmp cl,0
 jz exit3
 jmp next2







exit3:

mov ah,4ch
int 21h
code ends
end start

⌨️ 快捷键说明

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