Найти максимальное число из 15-ти имеющихся - Assembler

Узнай цену своей работы

Формулировка задачи:

Помогите решить задачку) С консоли ввести ровно 15 однозначных чисел. В каждой пятерке найти максимальное число. Полученный массив из 3-х элементов вывести на экран. Все, что получилось - это сделать так, чтобы можно было вводить 15 чисел, а вот дальше не очень...
.model tiny
.data?
 
buf db 15 dup (?)   ;выделили место под 15 значений
 
.data
.code
.startup
 
mov cx,15
 
mov di, offset buf
 
nextkey:
mov ah, 0 
int 16h
 
.if al<'0' || al>'9'
jmp nextkey
.endif
 
stosb
mov ah, 0eh
int 10h
 
loop nextkey
 
mov ah, 0 
int 16h
 
.exit   0
 
END

Решение задачи: «Найти максимальное число из 15-ти имеющихся»

textual
Листинг программы
    org 100h
    mov cx,3
@@: mov bp, cx
    call    get5
    mov [val], bl
    mov dx, msg
    mov ah, 9
    int 21h
    mov cx, bp
    loop    @B
    mov ah, 0
    int 16h
    int 20h
 
get5:   mov cx, 5
    xor ax, ax
    xor bx, bx
@@:
    int 16h
    cmp al, 30h
    jb  @B
    cmp al, 39h
    ja  @B
    cmp al, bl
    cmova   bx, ax
    int 29h
    mov al, 20h
    int 29h
    loop    @B
    ret
msg db  ' max = '
val db  ' ',0Dh, 0Ah,'$'

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4 из 5
Похожие ответы