Команда ADC

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
kot_v_krizovnike
Родился
Сообщения: 4
Зарегистрирован: Сб дек 28, 2013 20:44:16

Команда ADC

Сообщение kot_v_krizovnike »

Здравствуйте.
В обучалке, в теме AVR => массивы, не понял описание команды "adc". "сложить два регистра с учетом переполнения предыдущей операции (если результат предыдущей операции > 255)." Вопрос такой - переполнение чего в "предыдущей операции", адреса или содержимого регистров? И, если регистр переполнен, куда пишется избыток?
Спасибо за ответы.
Последний раз редактировалось Gudd-Head Пн фев 17, 2014 10:53:24, всего редактировалось 1 раз.
Причина: Сюда перенёс
Реклама
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Команда ADC

Сообщение Ser60 »

Имелось в виду переполнение содержимого регистров, т.е. в результате предыдущей операции сложения получилось число более 255. При сложении двух 8-битных чисел результат не может превысить значения 510, для представления которого в двоичной системе требуется 9 бит. В этом случае 9-й бит (результат переполнения) записывается в бит С регистра SREG. Операция ADC складывает два 8-битных числа с битом С. Последний равен 0 или 1 в зависимости от наличия переполнения в предыдущем сложении.
Реклама
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: Команда ADC

Сообщение Alexeyslav »

Вообще какой-то стремный у вас перевод попался... не "переполнение" а флаг переноса. Который возникает во многих случаях, и не только при переполнениях.
В частности он устанавливается когда результат сложения больше разрядности регистров(или результат операции вычитания меньше нуля), это позволяет 8-битными регистрами складывать 16, 32-х и многоразрядные числа. По факту, это 9-й бит результата операции.
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: Команда ADC

Сообщение Gudd-Head »

Alexeyslav писал(а):он устанавливается когда результат сложения больше разрядности регистров
Ну и чем это не переполнение?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Реклама
Эиком - электронные компоненты и радиодетали
HHIMERA
Друг Кота
Сообщения: 4583
Зарегистрирован: Вс дек 05, 2010 06:10:34
Откуда: ЮВ

Re: Команда ADC

Сообщение HHIMERA »

Потому что в классическом понимании переполнение это OVF... Но в данном случае это и переполнение, и перенос, и заём...
"Я не даю готовых решений, я заставляю думать!"(С)
Реклама
Ответить

Вернуться в «Разные вопросы по МК»