Найти максимальный элемент массива, который находится на четной позиции - Assembler
Формулировка задачи:
Найти максимальный элемент массива, который находится на четной позиции.
Решение задачи: «Найти максимальный элемент массива, который находится на четной позиции»
textual
Листинг программы
.model small .386 .data mas db 3,9,4,0,8,2,2,3,2,3 .stack db 255 dup (?) .code start: mov ax,@data mov ds,ax xor si,si mov al,mas[si] mov cx,5 search: cmp mas[si],al jg change jmp next change: mov al,mas[si] next: add si,2 loop search mov ah,02h mov dl,al or dl,30h int 21h mov ah,4Ch mov al,00h int 21h end start
Объяснение кода листинга программы
- Установка начального значения регистра AX, который содержит ссылку на сегмент данных.
- Загрузка сегмента данных в регистр DS.
- Установка начального значения регистра SI.
- Загрузка первого элемента массива в регистр AL.
- Установка счётчика для цикла по массиву.
- Начальный этап цикла по массиву.
- Сравнение текущего элемента массива со значением в регистре AL.
- Если текущий элемент больше, то изменяем значение в регистре AL на текущий элемент.
- Переходим к следующему этапу цикла.
- Увеличиваем значение регистра SI на 2.
- Проверка условия окончания цикла.
- Вывод на экран максимального элемента массива.
- Вывод на экран символа новой строки.
- Завершающий этап работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д