組合語言(十一)之統計非數字字元個數

2021-09-07 13:41:54 字數 2030 閱讀 4169

輸入以$結尾的字串,統計並輸出非數字字元的個數

程式執行:

mov ax,datas ;初始化ds

mov ds,ax

lea si,inputprompt ;輸出輸入提示

mov ah,2

mov cx,inputpromptlen ;輸出輸入提示的字串長度

s2:

mov dl,[si]

int 21h ;輸出提示字元

inc si

loop s2

mov ah,1 ;輸入設定

mov bx,0 ;記錄輸入有效的字元個數

s:int 21h

cmp al,'$' ;以'$'結束輸入

je break

cmp al,'0' ;判斷字元是否大於'0'

jb nonnumber ;若小於'0',則計數器加1

cmp al,'9' ;判斷字元是否大於'9'

ja nonnumber ;若大於'9',則計數器加1

jmp s1

nonnumber: ;非數字字元,計數器加1

inc bx

s1:jmp s

break:

mov nonnumbercount,bx ;儲存計數器

lea dx,outputnonnumbercount ;輸出計數器提示

mov ah,9

int 21h

mov ax,nonnumbercount

call print ;輸出計數器

retmain endp

print proc near

mov cx,0

mov bx,10

sprint:

mov dx,0

div bx

push dx

inc cx

cmp ax,0

jne sprint

sprint1:

pop dx

add dl,30h ;加30h,轉成數字字元

mov ah,2

int 21h

loop sprint1

retprint endp

codes ends

end main

組合語言(三十一)之數字字串加密與解密

輸入一串數字,然後進行加密解密輸出 程式執行 mov ax,datas 初始化ds mov ds,ax 輸出輸入提示 lea dx,input mov ah,9 int 21h 輸入一串字元 lea dx,line max len mov ah,10 int 21h 判斷字串長度是否為0 cmp l...

c 語言 數字字元統計

題目描述 對於給定的乙個字串,統計其中數字字元出現的次數。字串長度不超過1000.輸入輸入資料有多行,第一行是乙個整數n,表示測試例項的個數,後面跟著n行,每行包括乙個由字母和數字組成的字串。輸出對於每個測試例項,輸出該串中數字字元的個數,每個輸出佔一行。樣例輸入 copy 2asdfasdf123...

王爽之《組合語言》學習重點十一

實驗五 編寫 除錯具有多個段的程式 1 將下面的程式編譯連線,用debug載入 跟蹤,然後回答問題 assume cs code,ds data,ss stack data segment dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h data...