從鍵盤輸入一串字符,分別統(tǒng)計(jì)其中的字母,數(shù)字字符和其他_第1頁
從鍵盤輸入一串字符,分別統(tǒng)計(jì)其中的字母,數(shù)字字符和其他_第2頁
從鍵盤輸入一串字符,分別統(tǒng)計(jì)其中的字母,數(shù)字字符和其他_第3頁
從鍵盤輸入一串字符,分別統(tǒng)計(jì)其中的字母,數(shù)字字符和其他_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

匯編編程:從鍵盤輸入一串字符,分別統(tǒng)計(jì)其中的字母(不區(qū)分大小寫)、數(shù)字字符和其他鍵盤輸入一串字符,統(tǒng)計(jì)出其中的數(shù)字字符個(gè)數(shù),字母字符(不區(qū)分大小寫)個(gè)數(shù),其他字符個(gè)數(shù),并顯示出這三類統(tǒng)計(jì)結(jié)果(輸入字符串以回車結(jié)束),可連續(xù)對(duì)多個(gè)字符串統(tǒng)計(jì),用戶輸入N時(shí)退出程序。要求:題目分析(如何實(shí)現(xiàn),以及實(shí)現(xiàn)的關(guān)鍵技術(shù)或步驟)2.要有流程圖3.寫出程序代碼4.寫出上機(jī)操作步驟,給出輸入的數(shù)據(jù)及程序運(yùn)行結(jié)果。; 題目名稱:分類統(tǒng)計(jì)字符; 題目來源:/question/131013276.html; 本程序在MASMPlus 1.2集成環(huán)境下通過編譯,經(jīng)過調(diào)試,運(yùn)行正確。Code Segment Assume CS:Code,DS:Code; ; 功能:顯示指定地址(Str_Addr)的字符串; 入口:; Str_Addr字符串地址(要求在數(shù)據(jù)段); 用法: Output Str_Addr; 用法舉例:Output PromptStrOutput MACRO Str_Addr lea dx,Str_Addr mov ah,9 int 21h EndM; ; 功能:在當(dāng)前光標(biāo)位置顯示一個(gè)字符; 入口:dl=要顯示的字符 Output_Chr proc Near push ax mov ah,02h int 21h pop ax ret Output_Chr Endp ; ; 功能:顯示、輸出一個(gè)回車、換行Output_CTLF proc Near push ax push dx mov ah,02h mov dl,0dh int 21h mov dl,0ah int 21h pop dx pop ax retOutput_CTLF Endp ; ; 功能:把AX中的二進(jìn)制無符號(hào)數(shù)轉(zhuǎn)換成顯式的十進(jìn)制ASCII碼,并送顯示屏顯示; 入口:AX=二進(jìn)制數(shù) ; 出口:在當(dāng)前光標(biāo)位置顯示轉(zhuǎn)換后的ASCII碼數(shù)字 Unsi_Dec_ASCII Proc Near push dx push bx push di mov bx,10 lea di,Temp_Save5 mov BYTE PTR di,$ dec di cld Divide: xor dx,dx div bx or dl,30h mov di,dl dec di test ax,ax jnz Divide inc di push di pop dx mov ah,9 int 21h pop di pop bx pop dx ret Temp_Save db 6 dup(?)Unsi_Dec_ASCII EndP; ; 功能:鍵盤輸入一個(gè)字符,若輸入的是y或n(不分大小寫),則顯示并返回; 入口:無; 出口:若輸入的是y,進(jìn)位標(biāo)志置位;若輸入的是n,進(jìn)位標(biāo)志復(fù)位。Yes_or_No proc Near push dx push axInput_Chr: mov ah,7 ;不帶回顯的鍵盤輸入 int 21h mov dl,al and al,0dfh cmp al,Y jnz $+5 stc jmp $+7 cmp al,N jnz Input_Chr clc mov ah,2 int 21h pop ax pop dx retYes_or_No Endp; Letters dw ? ;字母個(gè)數(shù)Dights dw ? ;數(shù)字個(gè)數(shù)Others dw ? ;其它字符個(gè)數(shù)Letters_sum db 13,10,Letters: $Dights_sum db 13,10,Digits : $Others_sum db 13,10,Others : $Prompt_Str db Please input a string:$Prompt_Con db 13,10,13,10,Continue(Y/N)?$Press_Key db 7,13,10,13,10,The complated. Press any key to exit.$ Start: push cs pop ds push cs pop es; ; 從鍵盤上連續(xù)輸入一串字符(字符個(gè)數(shù)不超過80個(gè),該字符串用回車符結(jié)束)Input_Str: Output Prompt_Str ;提示輸入一串字符 lea dx,Buffer ;輸入字符串緩沖區(qū)地址 mov ah,0ah ;從鍵盤接收字符串 int 21h call Output_CTLF ;輸出一個(gè)回車、換行; ; 按字母、數(shù)字、其它字符分類統(tǒng)計(jì)計(jì)數(shù) lea si,Buffer1 ;實(shí)際輸入的字符數(shù)地址 lodsb ;讀入實(shí)際輸入的字符數(shù) xor ah,ah mov cx,ax ;實(shí)際輸入的字符數(shù)送計(jì)數(shù)器 jcxz Continue mov Letters,0 ;字母計(jì)數(shù)單元清零 mov Dights,0 ;數(shù)字計(jì)數(shù)單元清零 mov Others,0 ;其它字符計(jì)數(shù)單元清零Classify: lodsb ;當(dāng)前字符AL cmp al,0 ;當(dāng)前字符9? ja $+8 ;大于,轉(zhuǎn)去判斷是否字母 inc Dights ;數(shù)字計(jì)數(shù) jmp Other_Chr4 mov ah,al ;alah,用于判斷是否字母 and ah,0dfh ;屏蔽第5位,按大寫字母處理 cmp ah,A ;當(dāng)前字符Z? ja Other_Chr ;大于,轉(zhuǎn)去按其它字符處理 inc Letters ;字母計(jì)數(shù) jmp $+6Other_Chr: inc Others ;其它字符計(jì)數(shù) loop Classify; ; 顯示分類統(tǒng)計(jì)結(jié)果 Output Letters_sum mov ax,Letters ;字母個(gè)數(shù) call Unsi_Dec_ASCII ;把AX中的二進(jìn)制無符號(hào)數(shù)轉(zhuǎn)換成顯式的十進(jìn)制ASCII碼,并送顯示屏顯示 Output Dights_sum mov ax,Dights ;數(shù)字個(gè)數(shù) call Unsi_Dec_ASCII Output Others_sum mov ax,Others ;其它字符個(gè)數(shù) call Unsi_Dec_ASCIIContinue: Output Prompt_Con call Yes_or_No jnc Exit_Proc call Output_CTLF call Output_CTLF jmp Input

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論