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

📄 a.asm

📁 汇编语言写的程序
💻 ASM
字号:
data segment
	msg1 db 'please input a String:','$'
	msg2 db 'Sum:','$'
	msg3 db 'Num:','$'
	msg4 db 'Str:','$'
	msg5 db 'Del:','$'
	crlf db 10,13,'$'
	countNum db 0
	countStr db 0
	countDel db 0
	buffer db 21
	       db ?
	       db 21 dup(?)
	new    db 20 dup(?)       
data ends
code segment
	main proc far 
	assume cs:code,ds:data
start:
    push ds
    sub ax,ax
    push ax
    
    mov ax,data
    mov ds,ax
    
    mov ah,9
    lea dx,msg1
    int 21h
   
    lea dx,buffer
    mov ah,10
    int 21h
    
     
    mov ah,9
    lea dx,crlf
    int 21h
    
    mov cl,buffer+1
    lea si,buffer+2
    
next:
    cmp byte ptr [si],30h
    jc next1
    cmp byte ptr [si],39h
    ja next2
    inc countNum
    jc next1
next2:
    cmp byte ptr [si],41h
    jc next1
    cmp byte ptr [si],5ah
    ja next3
    inc countStr
    jc next1
next3:
    cmp byte ptr [si],61h
    jc next1
    cmp byte ptr [si],7ah
    ja next1
    inc countStr        
        
next1:
    inc si
    dec cl
    jnz next   
    
    mov al,buffer+1
    sub al,countNum
    sub al,countStr
    mov countDel,al
    
  
    lea dx,msg2
    mov ah,09
    int 21h
    
    mov bl,buffer+1
    call bin2dec
    
    mov ah,9
    lea dx,crlf
    int 21h
    
    lea dx,msg3
    mov ah,09
    int 21h
    
    mov bl,countNum
    call bin2dec
    
    mov ah,9
    lea dx,crlf
    int 21h
    
    lea dx,msg4
    mov ah,09
    int 21h
    
    mov bl,countStr
    call bin2dec
    
    mov ah,9
    lea dx,crlf
    int 21h
    
    lea dx,msg5
    mov ah,09
    int 21h
    
    mov bl,countDel
    call bin2dec
    
    ret
    main endp
    
bin2dec proc near   
  mov ch,0   
  mov cl,10d   
  call decdiv   
  mov cl,1d   
  call decdiv   
  ret   
  bin2dec endp   
    
  decdiv proc near   
  mov al,bl   
  mov ah,0   
  div cl   
  mov bl,ah   
  mov dl,al   
  add dl,30h
  
  test ch,01h
  jnz follow
  
  
 
   cmp dl,30h
   jz exit 
   mov ch,1  
 follow: 
     
  mov ah,2   
  int 21h   
  
exit:  
  ret   
  decdiv endp 
 code ends
 end start    		       

⌨️ 快捷键说明

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