Дан массив, состоящий из n элементов. Найти максимальный элемент в массиве - Assembler
Формулировка задачи:
Всем добрый день. Я сейчас сижу на экзамене и мне нужна помощь)))
Дан массив, состоящий из n элементов. Найти максимальный элемент в массиве.
Я знаю что тут куча подобных тем, но я всё обшарил и нигде нету рабочего кода! Тут стоит только программа flat assambler 1.67.26 и в ней не пашут коды которые лежат в аналогичных темах. Прошу помогите !!))) Стипуха срывается))Решение задачи: «Дан массив, состоящий из n элементов. Найти максимальный элемент в массиве»
textual
Листинг программы
format mz mov ax,cs mov ds,ax mov si,A mov cx,4 lodsw mov [Max],ax L1: lodsw cmp ax,[Max] jle L2 mov [Max],ax L2: loop L1 mov ah,0x4C int 0x21 A DW 5, -3, 9, -4, 5 Max DW ?
Объяснение кода листинга программы
- В начале кода подключается сегментный регистр cs к сегменту данных, а сегментный регистр ds к сегменту кода.
- Затем в регистр si загружается адрес начала массива A.
- Далее в регистр cx загружается количество элементов массива, то есть 4.
- Затем происходит загрузка двух слов из массива в регистры ax и dx.
- Результат сравнивается с максимальным значением, хранящимся в переменной Max.
- Если значение в ax больше, то оно записывается в переменную Max.
- Затем происходит переход к началу цикла, чтобы продолжить сравнение оставшихся элементов массива.
- После окончания цикла, в регистре ah устанавливается значение 0x4C, и происходит прерывание int 0x21.
- Значение переменной Max не определено, поэтому оно будет содержать неопределенное значение.
- Переменная DW содержит пять элементов массива, которые являются тестовыми значениями.
- Переменная Max также содержит неопределенное значение.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д