Контрольная работа: Внутренняя организация микроконтроллеров AVR
ADDRd, Rr - суммирование содержимого регистра Rd с содержимым регистра Rr. Результат помещается в Rd.
ADDR16, R17
Если результат больше 256, то флаг переноса – это флаг С в регистре статуса. Регистры Rd и Rr – любые из диапазона 0Rd, Rr31
ADCRd, Rr – суммирование с переносом. Содержимое Rd добавляется содержимому Rr и значению флага переноса С.
Пусть R1615
R172
ADCR16, R17
SUBRd, Rr – вычитание без переноса, т.е. Rd= Rd – Rr.
SUBIRd, k – вычитание константы k из содержимого регистра Rd, т.е. Rd= Rd – k.
SBCRd, Rr – вычитание с переносом, т.е. Rd= Rd – Rr – c.
ANDRd, Rr – логическая "И" содержимого двух регистров Rd и Rr.
R16=8=00001000
R17=00001010
ANDR16, R17=00001000
ANDIRd, k – логическая "И" содержимого регистра Rd и константы k.
ORRd, Rr – логическая "ИЛИ" содержимого двух регистров.
ORIRd, k - логическая "ИЛИ" содержимого регистра Rd и константы k.
EORRd, Rr– исключающая "ИЛИ".
COMRd – побитная инверсия Rd.
NEGRd – изменение знака числа.
SBRRd, k – установить биты в регистре.
Пример. Установить нулевой и третий биты в регистре R17.
SBR R17,0b00001001
SBR R17,9
SBR R17,$09 (0x09)
Устанавливать биты в регистре можно только для регистров 16 – 31.
CBRRd, k – очистить биты в регистре.
INCRd – увеличить на 1 содержимое регистра Rd.
DECRd – уменьшить на 1 содержимое регистра Rd.