程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> number-匯編語言輸入10個整數,輸出其中最小的奇數。

number-匯編語言輸入10個整數,輸出其中最小的奇數。

編輯:編程綜合問答
匯編語言輸入10個整數,輸出其中最小的奇數。

編一程序,從鍵盤輸入10個無符號整數(8位),找出其中最小的奇數並將結果顯示出來。沒有奇數則顯示 NO ODD NUMBER
哪位大俠可以教教我這個該怎麼做,老師教的完全聽不懂QAQ

最佳回答:


DATAS SEGMENT
DATA DB 74,58,65,69,254,187,6,11,98,33
;DATA DB 74,58,66,66,254,186,6,16,98,36 ; test odd number
len equ $ - offset data
no_str db 'NO ODD NUMBER','$'
DATAS ENDS

CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START:
MOV AX,DATAS
MOV DS,AX
LEA DI,DATA
mov bl,255
MOV CX,Len
xor dx,dx

next1:
lodsb
test al,1
jz next2
cmp al,bl
ja next2
inc dx
xchg al,bl
next2:
loop next1

cmp bl,255
jz next3
mov al,bl
call BCD_output
next3:
cmp dx,0
jnz quit
mov dx,offset no_str
mov ah,9
int 21h

quit:
MOV AH,4CH
INT 21H

;-------------------------
; output Al (0-255) BCD output
BCD_output:
push dx
push cx
xor cx,cx

bcd5:
add al,0
aam

bcd7:
push ax
inc cx
or ah,ah
jz bcd20
cmp ah,0Ah
jb bcd10
mov al,ah
xor ah,ah
jmp short bcd5

bcd10:
mov al,ah
xor ah,ah
jmp short bcd7

bcd20:
pop dx
or dl,'0'
mov ah,2
int 21h
loop bcd20

pop cx
pop dx
ret
;-------------------------

CODES ENDS
END START

這是某大神的代碼,怎麼改才能改成讓10個數從鍵盤輸入而不是預設好的?

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved