Реферат: Система команд микроконтроллеров
CPSE
d, r = 0 – 31; P = 0 – 31 (!); b = 0 – 7
Таблица 13
№ |
Операция |
Мнемокод команды |
116 |
МК – режим энергосбережения |
SLEEP |
117 |
Перезапуск WDT |
WDR |
118 |
Нет |
NOP |
■ RdRr — регистры общего назначения с номерами d и r соответственно;
■ (Rd), (Ri) — байты в регистрах Rd n R, соответственно;
■ Rd.b — разряд b (b = 0—7) регистра Rfi, бит в разряде Rd.b;
■ $ — указатель шестнадцатернчного кода;
■ ^, v, + - знаки логических операции И, ИЛИ, исключающее ИЛИ соответственно;
■ (‾)/( ),( ) — знаки операции НЕ, сдвиг кода вправо, сдвиг кода влево соответственно.
Арифметические операции — сложение и вычитание — могут выполняться с числами без знака в двоичном коде и с числами со знаком в дополнительном двоичном коде. В отличие от микроконтроллеров многих других семейств, в которых вычитание сводится к сложению с числом с измененным знаком (X-Y = X + (-Y )), в микроконтроллерах семейства AVR вычитание выполняется с помощью аппаратного двоичного вычитателя. Работа двоичного вычитателя рассмотрена в приложении П7.
При выполнении арифметических и логических операций кроме кода результата формируются значения признаков результата. При выполнении операций сравнения (команды М»№ 18, 19 и 27) формируются только значения признаков результата.
Значения признаков результата представлены состоянием разрядов регистра состояния SREG (№ S3F). Используются тесть признаков результата, которым присвоены имена С (SREG.O), Z (SREG.1) N (SREG.2), V (SREG.3), S (SREG.4) и Н (SREG.5). В табл. 1-3 признаки, значения которых формируются при выполнении команд, отмечены знаком "+" пли указано их значение.
При выполнении разных операций значение признаков формируются по разным правилам.
Признак С принимает единичное значение:
■ при появлении единицы переноса из старшего разряда при выполнении операции сложения (команды №№ 14, 15 и 32);
■ при появлении единицы займа в старший разряд при выполнении операции вычитания (команды №>№ 4, 16, 17, 18, 19, 25, 26, 27 и 33);
■ при выходе единицы за пределы разрядной сетки при выполнении операции сдвига (команды №№ 7, 8, 9, 10 и 11).