Консультация № 110317
20.11.2007, 18:35
0.00 руб.
0 1 1
Єксперты помогите плз надо срочно решить задачу !!!

Для матрицы размером 5Х10 определить максимальный елемент матрицы если первый елемент находится в оперативной памяти по адресу 1000А а второй 1001h .... итд результат занести в стек по адресу 5000h ....
Зранее СПС

Обсуждение

давно
Старший Модератор
31795
6196
22.11.2007, 12:20
общий
это ответ
Здравствуйте, VaNuk!

Т.к. все элементы матрицы расположенны последовательно в памяти то можно все реализовать только в одном цикле.
<font color=blue>mov si,1000h;<font color=green>настраиваемся на матрицу</font>
cld;<font color=green>выбираем напрвление +1</font>
mov cx,5*10;<font color=green>всего 50 элементов</font>
lodsb;<font color=green>читаем первый элемент</font>
jmp short C;<font color=green>переходим, чтобы запомнить максимальный элемент</font>
A:lodsb;<font color=green>читаем текущий элемент</font>
cmp ah,al;<font color=green>сравниваем текущий элемент с максимальным</font>
jae B;<font color=green>если ah больше al переходим</font>
C:mov ah,al;<font color=green>теперь новый максимальный элемент</font>
B:loop A;<font color=green>проверяем все элементы в цикле</font>
mov [5000h],ah;</font><font color=green>записываем по адресу</font>

Удачи!
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

Форма ответа