![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Регистрация: 04.12.2010
Сообщений: 4
|
![]()
Прошу помощи в решении задачи. Программирование процессора 8086.
Вроде бы не очень сложная, но пока разобраться не получается. Входные параметры: BX – адрес массива, состоящего из 16-ти байт. Элементы массива могут содержать значения 1 или 2. Определить последний элемент, который содержит 2, начиная с конца массива. Вернуть порядковый номер (начиная с 0) этого элемента в AX или 255 если нет ни одного такого элемента. Код:
|
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 20.07.2010
Сообщений: 52
|
![]()
Непонятно, зачем у вас массив забит числом 255, если по условию, как я понял, это число является лишь признаком отсутствия в массиве двойки.
Вот мой вариант (результат смотрите в отладчике, на экран не стал выводить) : Код:
Последний раз редактировалось Ant1971on; 04.12.2010 в 22:06. |
![]() |
![]() |
![]() |
#3 |
Регистрация: 04.12.2010
Сообщений: 4
|
![]()
Это я перепутал. Спасибо, Антон!
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 20.07.2010
Сообщений: 52
|
![]()
Рад был помочь
![]() Код:
|
![]() |
![]() |
![]() |
#5 |
Регистрация: 04.12.2010
Сообщений: 4
|
![]()
Есть вот такая загвоздка. Программа, в принципе, работает, но находит первую двойку с конца, а не последнюю. Но не суть, я идеей воспользовался, за что спасибо, и написал немного по другому, пусть и получилось объёмно. Но и тут несостыковочка, если двойка в нулевом элементе, то выводится 255, т.к. условие стоит на проверку нуля в bp. Если у кого найдутся идеи, буду рад, если поделитесь. Код прилагается.
Код:
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 20.07.2010
Сообщений: 52
|
![]()
Виноват, невнимательно прочитал задачу. Почему-то решил, что раз с конца проверяем, то и находить надо первую попавшуюся двойку с конца.
Вот правильное решение: Код:
|
![]() |
![]() |
![]() |
#7 |
Регистрация: 04.12.2010
Сообщений: 4
|
![]()
Мдя, оказалось всё совсем просто, но я не догадался. Ещё раз благодарю, Антон!
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
задача | Ainash | Помощь студентам | 13 | 04.11.2010 15:37 |
Задача по с | ymanety | Общие вопросы C/C++ | 1 | 30.10.2010 21:28 |
Задача | ksandrj | Помощь студентам | 0 | 23.09.2010 14:29 |