Хостинг портала RFpro.ru: Московский хостер Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64 РАССЫЛКИ ПОРТАЛА RFPRO.RU Лучшие эксперты по данной тематике Номер выпуска: | 1503 | Дата выхода: | 02.02.2012, 14:30 | Администратор рассылки: | Лысков Игорь Витальевич (Старший модератор) | Подписчиков / экспертов: | 140 / 47 | Вопросов / ответов: | 1 / 1 | Консультация # 185321: Уважаемые эксперты! Пожалуйста, ответьте на вопрос: есть следующая задача: В хранимом ОЗУ с адреса 0ВАСН массиве из 80 чисел в прямом коде найти наибольшее число и выдать на УВВ 9. Готовность устройства вывода задается “1” в старшем разряде устройства ввода №8. есть готовый алгоритм и программа: а в рецензии написали: В Вашем алгор... Консультация # 185321: Уважаемые эксперты! Пожалуйста, ответьте на вопрос: есть следующая задача: В хранимом ОЗУ с адреса 0ВАСН массиве из 80 чисел в прямом коде найти наибольшее число и выдать на УВВ 9. Готовность устройства вывода задается “1” в старшем разряде устройства ввода №8.
есть готовый алгоритм и программа: а в рецензии написали: В Вашем алгоритме 6-8 блоки неверны помогите сделать так, чтоб правильно было

Программа:
К1: MVI B, 50H K2: LXI H, 0ВАС K3: MOV A, M K4: M1: INX H K5: SUB M K6: MOV A, M K7: M2: DCP B К8: JNZ M1 K9: MOV B, A K10: M3: IN 8 K11: JNC M3 K12: RRC K13: JNC M3 K14: MOV A, B K15: OUT 9 HLT
Дата отправки: 30.01.2012, 13:54 Вопрос задал: Посетитель - 363279 (Посетитель) Всего ответов: 1 Страница онлайн-консультации » Консультирует Зенченко Константин Николаевич (Модератор): Здравствуйте, Посетитель - 363279!
Исправленный вариант:
Код : К01: MVI B, 50H K02: LXI H, 0ВАСH K03: MOV A, M K04:M1: INX H K05: CP M;FL<=A-M K06: JPP M2;A>M K07: MOV A, M K08:M2: DCR B К09: JNZ M1 K10: MOV B, A K11:M3: IN 8 K12: RRC; K13: JNC M3 K14: MOV A, B K15: OUT 9 HLT Отдельно замечания: Блок №5 алгоритма - это не команда SUB, т.к. она изменяет как содержимое фалгов, так и содержимое самого регистра А. А это уже нарушение задания, т.к. в регистре А будет находится недостоверное значение. Там должна находится команда сравненния, работает она аналогично команде SUB(из А вычитается содержимое указанного регистра, устанавливаются соответственно флаги сравнения, НО содержимое регистра А остается без изменений). См. комментарий после точки с запятой. Блок №6 алгоритма - в алгоритме переход на присвоение нового значения происходит если S=0, результат команды сравнения больше нуля или содержимое регистра А больше содержимого регистра М, но зачем присваивать явно меньшее значение, т.к. по заданию нужно: найти наибольшее число. Т.е. приведенная блок-схема ищет минимальное значение в массиве, а Вам необходимо в этом блоке поменять местами 0 и 1. Блок №12 алгоритма - непонятно, что т акое СЛА: сдвиг линейный аккумулятора, сдвиг левый аккумулятора. В коде Вы используете команду циклического правого сдвига. К12 я оставил без изменений, но обращаю на это Ваше внимание.
ps:вопросы задавайте в мини-форум. Удачи!
Оценить выпуск | Задать вопрос экспертам главная страница | стать участником | получить консультацию техническая поддержка | восстановить логин/пароль Дорогой читатель! Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно! МЫ РАБОТАЕМ ДЛЯ ВАС! |
Комментариев нет:
Отправить комментарий