1樓:匿名使用者
;程式硬性規定了輸入要1 2 8 6 1 這樣輸入, 即每輸入1數字就要空一格
assume cs:code, ds:datadata segment
str db 0ah,0dh,"please input five number(0~9): $"
buf db 20
db ?
db 20 dup (?)
max db ?
crlf db 0ah,0dh,'$'
data ends
code segment
start:
mov ax,data
mov ds,ax
;列印提示字元
lea dx, str
mov ah,9
int 21h
;接收使用者輸入字元
lea dx, buf
mov ah,10
int 21h
;程式主體
mov cl,4
lea si,buf+2
mov al, [si]
mov max,al
next:add si,2
mov al,[si]
cmp max,al
jg done;檢查max是否大於al,如果是跳轉到done,否則交換max,al的值(即執行xchg max,al)
xchg max,al
done:loop next
;輸出空行
lea dx,crlf
mov ah,9
int 21h
;輸出最大值
mov ah,2
mov dl,max
int 21h
;結束mov ax,4c00h
int 21h
code ends
end start
masm link 執行通過
ps:若有不明白的地方,可以追問
2樓:
.......
mov cx,5 ;cx用於計數
xor bx,bx ;bl放最大數,先預置為0loop1:
mov ah,1 ;輸入一個數
int 21h
cmp bl,al ;是不是比上一個數大jnc loop2
mov bl,al ;如果新輸入的數大,就換成該數loop2:
loop loop1 ;轉去處理下一個數
mov dl,bl ;輸出最大數
mov ah,2
int 21h
..............
3樓:之鑲巧
輸出格式,如回車換行自己寫的。
**段assume cs:code
mov ah,start:1
int 21h
mov bh,al
int 21h < / mov bl,alint 21h
mov cl,al,bh,bl,cl輸入三個字元。
cmp bh,bl
ja c1
cmp bl,cl
ja p2
jmp p3
c1:cmp bh ,cl
ja p1
jmp p3
p1:mov ah,2
mov dl,bh
jmp ed
p2:mov ah ,2
mov dl,bl
有jmp ed
p3:mov ah,2
mov dl,cl
ed:int 21h
mov ah,4ch
int 21h
的**最終
end start
編寫程式,從鍵盤輸入字元,若為大寫字母則轉換為小寫字母輸出,若為小寫字母則
include main include int main 如何編寫一個 若為大寫字母則轉換為小寫字母輸出,若為小寫字母則輸出大寫字母 的程式?寫一個程式,要求由鍵盤輸入一個字元,若為大寫字母輸出a若為小寫字母輸出a,可以參考下面的 include void main include void ma...
編寫程式,從鍵盤輸入兩個整數給a和b,求他們的和,差,商數和
include void main include int main 結果 input a,b 9 5a b 14 a b 4 a b 45 a b 1 a b 4 c語言程式設計.由鍵盤輸入兩個整數,分別計算這兩個數的和 差 積 商,並輸出結果。具體輸入如下 include stdio.h mai...
求大神幫忙,編寫C語言程式,從鍵盤輸入兩個整數,輸出這兩
include intmain 擴充套件資料 bai 輸入du兩個數 zhi字,並dao 計算出內兩個數的最容小公倍數 include inti ax inta,intb intmain intargc,constchar argv inti ax inta,intb y a max b max m...