Консультация № 189225
20.04.2016, 11:01
0.00 руб.
0 2 1
Здравствуйте! У меня возникли сложности с таким вопрос, немогу составить программу:
Составить программу сложения 2-х трехразрядных чисел и проверить ее работоспособность на микроконтроллере. Первое число вводиться с трех старших разрядов порта А, а второе - с 4, 5 и 3 разрядов порта С. Вывод результата осуществляется через порт В.

Обсуждение

давно
Посетитель
7438
7205
20.04.2016, 11:18
общий
22.04.2016, 18:23
Адресаты:
Микроконтроллер-то какой? Уточнять же надо!
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен
давно
Посетитель
7438
7205
25.04.2016, 13:51
общий
это ответ
Здравствуйте, ruslan10!
Реализация для AVR. Настройка портов опущена.
[code lang=asm]
in r16, PINA ;вводим с порта А
swap r16 ;меняем местами тетрады
lsr r16 ;сдвигаем на 1 бит вправо, в результате три старших бита оказываются на месте младших
andi r16, 7 ;оставляем только нужные биты

in r17, PINC ;вводим с порта С
lsr r17 ;сдвигаем вправо на 3 бита
lsr r17
lsr r17 ;биты 3,4,5 на месте младших
andi r17, 7 ;оставляем только нужные биты

add r16, r17 ;сумма двух введенных чисел
out PORTB, r16 ;в порт В
[/code]
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен
Форма ответа