專注電子技術學習與研究
當前位置:單片機教程網(wǎng) >> MCU設計實例 >> 瀏覽文章

匯編程序:統(tǒng)計一個字符串里數(shù)字的個數(shù)(初級版)

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2013年12月01日   【字體:
DATAS SEGMENT
    sum db 2 dup(?);此處輸入數(shù)據(jù)段代碼 
    string db 25 dup(?);存放字符
    tital db  'This program is made by wq. ',0dh,0ah
          db  'PLease input the string: ','$'
    overs db 'Amout of the nember is : ','$'
DATAS ENDS
STACKS SEGMENT
    ;此處輸入堆棧段代碼
STACKS ENDS
CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
    MOV AX,DATAS
    MOV DS,AX
    mov ax,offset tital
    mov dx,ax
    mov ah,09h
    int 21h
    mov cl,25
    mov si,0
    mov ax,offset string
    mov dx,ax
again:           ;輸入字符
    mov ah,01h
    int 21h
    cmp al,0dh
    jz then
    mov string[si],al
    inc si
    dec cl
    jnz again
then:
    mov ax,offset string
    mov dx,ax
    mov si,0
    mov bl,0
    mov cx,6
exchang:
    cmp cx,0
    jz over
    cmp string[si],30h
    jnb next
    inc si
    dec cx
    jmp exchang
    next:
    cmp string[si],39h 
    jle calculator
    inc si
    dec cx
    jmp exchang
    calculator:
    inc si
    inc bl
    dec cx
    jmp exchang   
over:
   lea ax,overs
   mov dx,ax
   mov ah,09h
   int 21h
  
    mov ax,offset sum
    mov dx,ax
    mov sum[0],bl
    add sum[0],30h
    mov sum[1],'$'
    mov ax,offset sum
    mov dx,ax
    mov ah,09h
    int 21h   
    MOV AH,4CH
    INT 21H
CODES ENDS
    END START

這里是本程序的完善版: http://www.torrancerestoration.com/mcu/2466.html

關閉窗口

相關文章