рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Операция

Операция - раздел Компьютеры, Система команд 8-разрядных RISC микроконтроллеров семейства AVR (I) Pc <-- Pc + K + 1 ...

(i) PC <-- PC + k + 1
  Синтаксис Операнды: Счетчик программ: Стек
(i) RJMP k -2K < k < 2K PC <-- PC + k + 1 Стек не меняется
               

16-разрядный код операции:

kkkk kkkk kkkk

Булевы выражения регистра статуса (SREG)

I T H S V N Z C  
- - - - - - -  
I: 1 Флаг установлен  
                     

Пример:

cpi r16, $42 ; Сравнить r16 с $42

brne error ; Перейти если r16 <> $42

rjmp ok ; Безусловный переход

error: add r16, r17 ; Сложить r17 с r16

inc r16 ; Увеличить на 1 r16

ok: nop ; Назначение для rjmp (пустая операция)

Слов: 1 (2 байта)

Циклов: 2

 

Команда ROL - cдвинуть влево через перенос

Описание:Сдвиг всех битов Rd на одно место влево. Флаг переноса (С) регистра состояния (SREG) смещается на место бита 0 регистра Rd. Бит 7 смещается во флаг переноса (C).

Операция:

  Синтаксис Операнды: Счетчик программ:
(i) ROL Rd 0 < d < 31 PC <- PC + 1

16-разрядный код операции:

11dd dddd dddd

Булевы выражения регистра статуса (SREG)

I T H S V N Z C    
- - Û Û Û Û Û Û    
H: Rd3
S: NÅV, Для проверок со знаком
V: NÅC (Для N и C после сдвига) Устанавливается если (N устанавливается и C очищается) или (N очищается а C устанавливается). В ином случае очищается (при наличии значений N и C после сдвига)
N: R7 Устанавливается если в результате установлен MSB, в ином случае очищается
Z: Rd7*R6*R5*R4*R3*R2*R1*R0 Устанавливается если результат $00, в ином случае очищается
C: Rd7 Устанавливается если перед сдвигом был установлен MSB регистра Rd, в ином случае очищается
R: (Результат)соответствует Rd после выполнения команды
                     

Пример:

rol r15 ; Сдвигать влево

brcs oneenc ; Перейти если установлен перенос

. . .

oneenc: nop ; Перейти по назначению (пустая операция)

Слов: 1 (2 байта)

Циклов: 1

 

Команда ROR - cдвинуть вправо через перенос

Описание:Сдвиг всех битов Rd на одно место вправо. Флаг переноса (С) регистра состояния (SREG) смещается на место бита 7 регистра Rd. Бит 0 смещается во флаг переноса (C).

Операция:

  Синтаксис Операнды: Счетчик программ:
(i) ROR Rd 0 < d < 31 PC <- PC + 1

16-разрядный код операции:

010d dddd

Булевы выражения регистра статуса (SREG)

I T H S V N Z C    
- - - Û Û Û Û Û    
S: NÅV, Для проверок со знаком
V: NÅC (Для N и C после сдвига) Устанавливается если (N устанавливается и C очищается) или (N очищается а C устанавливается). В ином случае очищается (при наличии значений N и C после сдвига)
N: R7 Устанавливается если в результате установлен MSB, в ином случае очищается
Z: Rd7*R6*R5*R4*R3*R2*R1*R0 Устанавливается если результат $00, в ином случае очищается
C: Rd0 Устанавливается если перед сдвигом был установлен LSB регистра Rd, в ином случае очищается
R: (Результат)соответствует Rd после выполнения команды
                     

Пример:

ror r15 ; Сдвигать вправо

brcc zeroenc ; Перейти если перенос очищен

. . .

zeroenc: nop ; Перейти по назначению (пустая операция)

Слов: 1 (2 байта)

Циклов: 1

 

Команда SBC - вычесть с переносом

Описание:Вычитание содержимого регистра-источника и содержимого флага переноса (С) из регистра Rd, размещение результата в регистре назначения Rd.

Операция:

(i) Rd <-- Rd - Rr - C
  Синтаксис Операнды: Счетчик программ:
(i) SBC Rd,Rr 0 < d < 31, 0 < r < 31 PC <- PC + 1
           

16-разрядный код операции:

10rd dddd rrrr

Булевы выражения регистра статуса (SREG)

I T H S V N Z C    
- - Û Û Û Û Û Û    
H: Rd3*Rr3+Rr3*R3+R3*Rd3 Устанавливается если есть заем из бита 3, в ином случае очищается
S: NÅV, Для проверок со знаком
V: Rd7*Rr7*R7+Rd7*Rr7*R7 Устанавливается если в результате операции образуется переполнение дополнения до двух, в ином случае очищается
N: R7 Устанавливается если в результате установлен MSB, в ином случае очищается
Z: R7*R6*R5*R4*R3*R2*R1*R0*Z Предшествовавшее значение остается неизменным если результат равен нулю, в ином случае очищается
C: Rd7*Rr7+Rr7*R7+ R7*Rd7 Устанавливается если абсолютное значение содержимого Rr плюс предшествовавший перенос больше, чем абсолютное значение Rd, в ином случае очищается
R: (Результат)соответствует Rd после выполнения команды
                     

Пример:

; Вычесть r1 : r0 из r3 : r2

sub r2, r0 ; Вычесть младший байт

sbc r3, r1 ; Вычесть старший байт с переносом

Слов: 1 (2 байта)

Циклов: 1

 

Команда SBCI - вычесть непосредственное значение с переносом

Описание:Вычитание константы и содержимого флага переноса (С) из содержимого регистра, размещение результата в регистре назначения Rd.

Операция:

(i) Rd <-- Rd - K - C
  Синтаксис Операнды: Счетчик программ:
(i) SBCI Rd,K 0 < d < 31, 0 < K < 255 PC <- PC + 1
           

16-разрядный код операции:

KKKK dddd KKKK

Булевы выражения регистра статуса (SREG)

I T H S V N Z C    
- - Û Û Û Û Û Û    
H: Rd3*K3+K3*R3+R3*Rd3 Устанавливается если есть заем из бита 3, в ином случае очищается
S: NÅV, Для проверок со знаком
V: Rd7*K7*R7+Rd7*K7*R7 Устанавливается если в результате операции образуется переполнение дополнения до двух, в ином случае очищается
N: R7 Устанавливается если в результате установлен MSB, в ином случае очищается
Z: R7*R6*R5*R4*R3*R2*R1*R0*Z Предшествовавшее значение остается неизменным если результат равен нулю, в ином случае очищается
C: Rd7*K7+K7*R7+ R7*Rd7 Устанавливается если абсолютное значение константы плюс предшествовавший перенос больше, чем абсолютное значение Rd, в ином случае очищается
R: (Результат)соответствует Rd после выполнения команды
                     

Пример:

; Вычесть $4F23 из r17 : r16

subi r16, r23 ; Вычесть младший байт

sbci r17, $4F ; Вычесть старший байт с переносом

Слов: 1 (2 байта)

Циклов: 1

 

Команда SBI - установить бит в регистр I/O

Описание:Команда устанавливает заданный бит в регистр I/O. Команда работает с младшими 32 регистрами I/O (адреса с 0 по 31)

– Конец работы –

Эта тема принадлежит разделу:

Система команд 8-разрядных RISC микроконтроллеров семейства AVR

На сайте allrefs.net читайте: "Система команд 8-разрядных RISC микроконтроллеров семейства AVR"

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Операция

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Операция
(i) P <-- Rr   Синтаксис Операнды: Счетчик программ: (i) OUT

Операция
(i) Rd <-- STACK   Синтаксис Операнды: Счетчик программ: (i)

Операция
(i) STACK <-- Rr   Синтаксис Операнды: Счетчик программ: (i)

Операция
(i) PC <-- PC + k + 1 Приборы с 16-разрядным счетчиком команд, максимум 128 Кбайт памяти программ (ii) PC <-- PC + k + 1 Прибо

Операция
(i) PC(15-0) <-- STACK Приборы с 16-разрядным счетчиком команд, максимум 128 Кбайт памяти программ (ii) PC(21-0) <-- STACK При

Операция
(i) PC(15-0) <-- STACK Приборы с 16-разрядным счетчиком команд, максимум 128 Кбайт памяти программ (ii) PC(21-0) <-- STACK При

Операция
(i) I/O(P,b) <-- 1   Синтаксис Операнды: Счетчик программ: (i)

Операция
(i) If I/O(P,b) = 0 then PC <-- PC + 2 (or 3) else PC <-- PC + 1   Синтаксис Операнды: Счетчик

Операция
(i) If I/O(P,b) = 1 then PC <-- PC + 2 (or 3) else PC <-- PC + 1   Синтаксис Операнды: Счетчик

Операция
(i) If Rr (b) = 0 then PC <-- PC + 2 (or 3) else PC <-- PC + 1   Синтаксис Операнды: Счетчик пр

Операция
(i) If Rr(b) = 1 then PC <-- PC + 2 (or 3) else PC <-- PC + 1   Синтаксис Операнды: Счетчик про

Операция
(i) C <-- 1   Синтаксис Операнды: Счетчик программ: (i) SEC

Операция
(i) H <-- 1   Синтаксис Операнды: Счетчик программ: (i) SEH

Операция
(i) I <-- 1   Синтаксис Операнды: Счетчик программ: (i) SEI

Операция
(i) N <-- 1   Синтаксис Операнды: Счетчик программ: (i) SEN

Операция
(i) Rd <-- $FF   Синтаксис Операнды: Счетчик программ: (i) SE

Операция
(i) S <-- 1   Синтаксис Операнды: Счетчик программ: (i) SES

Операция
(i) T <-- 1   Синтаксис Операнды: Счетчик программ: (i) SET

Операция
(i) V <-- 1   Синтаксис Операнды: Счетчик программ: (i) SEV

Операция
(i) Z <-- 1   Синтаксис Операнды: Счетчик программ: (i) SEZ

Операция
  Синтаксис Операнды: Счетчик программ: (i) SLEEP None PC <-- PC + 1

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги