РАССЫЛКИ ПОРТАЛА RFPRO.RU Лучшие эксперты в разделе Номер выпуска: | 1628 | Дата выхода: | 28.09.2016, 09:51 | Администратор рассылки: | Лысков Игорь Витальевич (Старший модератор) | Подписчиков / экспертов: | 30 / 11 | Вопросов / ответов: | 1 / 1 | Консультация # 189809: Здравствуйте! У меня возникли сложности с таким вопросом: Три массива в памяти заданы начальными адресами и длинами. Вычис- лить и вывести на устройство вывода среднее арифметическое парамет- ров этих массивов.Параметр массивов это номер максимального числа,размер массива n = 10; ниже представил код что я написал,но не могу правильн... Консультация # 189809: Здравствуйте! У меня возникли сложности с таким вопросом:
Три массива в памяти заданы начальными адресами и длинами. Вычис- лить и вывести на устройство вывода среднее арифметическое парамет- ров этих массивов.Параметр массивов это номер максимального числа,размер массива n = 10; ниже представил код что я написал,но не могу правильно написать условие выполнение подпрограммы помогите :) Дата отправки: 23.09.2016, 09:20 Вопрос задал: KORSAJan (Посетитель) Всего ответов: 1 Страница онлайн-консультации » Консультирует Лысков Игорь Витальевич (Старший модератор): Здравствуйте, freeflowmc! Подробные комментарии в коде
;Три массива в памяти заданы начальными адресами и длинами. ;Вычислить и вывести на устройство вывода среднее арифметическое ;параметров этих массивов.Параметр массивов это номер максимального числа,размер массива n = 10; RD #85 WR R1 RD #10 WR R2 CALL M WR R6 ;сохраним первый индекс максимального RD #100 WR R1 RD #10 WR R2 CALL M ADD R6 ;сложим с предыдущим! WR R6 ;сохраним там же RD #110 WR R1 RD #10 WR R2 CALL M ADD R6 ;сложим с суммой первых двух DIV #3 OUT HLT ;п/п вычисления индекса максимального элемента M:MOV R4,R1 ;сохраним адрес массива, надо для вычисления индекса RD @R1+ ;читаем первого MOV R0,R1 ;сохраним адрес ЗА первым, как индекс максимального WR R3 ;здесь будет значение максимального элемента JRNZ R2,L1 ;вот таким "хитрым"" способом уменьшим счетчик R2 на 1 L1:RD @R1+ ;читаем очередного текущего WR R7 ;сохраним для будущего SUB R3 ;проверяем больше ли текущий максимального JZ L3 ;равного обходим JS L3 ;меньше - обходим MOV R0,R1 ;для большего сохраним адрес ЗА значением RD R7 ;сохраненное значение текущего WR R3 ;будет новым максимальным L3: JRNZ R2,L1 ;по всем элементам RD R0 ;адрес ЗА максимальным SUB R4 ;отняв сохраненный адрес начала, получим индекс ЗА максимальным (или счет с 1) SBI #1 ;отняв 1, получим индекс, считая с 0!. RET ;Если надо считать номер первого, как 1, то предыдущую команду убрать!  | Консультировал: Лысков Игорь Витальевич (Старший модератор) Дата отправки: 23.09.2016, 11:44 5 нет комментария ----- Дата оценки: 26.09.2016, 10:04 | Рейтинг ответа: +1 |
Оценить выпуск | Задать вопрос экспертам главная страница | стать участником | получить консультацию техническая поддержка Дорогой читатель! Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно! МЫ РАБОТАЕМ ДЛЯ ВАС! |
Комментариев нет:
Отправить комментарий