用組合語言試編寫程式:從鍵盤輸入字元,以回車結束。統計輸入的字元個數,並顯示輸入的字元和字元個數。
10分鐘能行嗎?盡快吧。
| 2011-12-13 09:30 | 懸賞分:20
;*********************************************
最佳答案:
;----------------------------------
datas segment
in_1 db 100
n1 db ?
buff db 100 dup('$')
msg1 db 10, 13, 'please input str : $'
msg2 db 10, 13, 'the str long is : $'
crlf db 10, 13, '$'
datas ends
;----------------------------------
codes segment
assume cs:codes, ds:datas
start:
mov ax, datas
mov ds, ax
mov dx, offset msg1 ;提示輸入.
mov ah, 09h
int 21h
mov dx, offset in_1 ;接收鍵盤輸入.
mov ah, 0ah
int 21h
mov dx, offset crlf ;回車換行.
mov ah, 09h
int 21h
mov dx, offset buff ;輸出原字串.
mov ah, 09h
int 21h
mov dx, offset msg2 ;提示長度.
mov ah, 09h
int 21h
;----------------------------------
mov al, n1
mov bl, 10
mov cx, 0
l1:mov ah, 0
div bl
push ax
inc cx
and al, al
jnz l1
l2:pop dx
mov dl, dh
add dl, 48
mov ah, 2
int 21h
loop l2
;----------------------------------
mov ah, 4ch
int 21h
codes ends
end start
;*********************************************
程式執行後,顯示如下:
c:\masm>i_o
please input str : slk09rmds;cv9u(u*)(
slk09rmds;cv9u(u*)(
the str long is : 19
原題**:
;*********************************************
80x86組合語言 分類統計
組合語言的程式設計題!急 有100個學生成績,存放在以data為首址的位元組儲存單元中。試統計其中90 含90 以上的人數,60 90 含60 之間的人數,60以下的人數,分別存入max,middle,min三個變數中。15 分鐘前 做而論道 十七級 最快回答 assume ds qq,cs cc ...
用80x86組合語言程式設計 鍵盤輸入與顯示輸出
要求 從鍵盤輸入一行字元,要求第乙個鍵入的字元必須是空格,不是,就退出。如果是的話,開始接收字元並存放在首位址buffer的緩衝區內,直到接收到第二個空格時結束。然後輸出這個字串。懸賞分 15 下列程式,經過檢驗,符合條件要求。data segment buffer db 80 dup data e...
組合語言 80x86定址方式
1 立即定址方式 立即定址方式中指令的運算元是8位或16位立即數,並直接出現在指令中。例如 mov al,10h 源運算元為立即定址 執行後al 10h mov ax,0a48h 源運算元為立即定址 執行後ax 0a48h 立即定址只能用於源運算元,不能用於目的運算元。2 暫存器定址方式 暫存器定址...