Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Otvety.doc
Скачиваний:
17
Добавлен:
08.03.2015
Размер:
7.46 Mб
Скачать

N – устанавливается в 1, если старший 7ой байт результата равен 1. И 0, если 0.

14. Порты ввода-вывода.

У МК имеется 4 порты вводв-вывода, с каждым из портов связаны 3 регистра специального назначения.

С портом А: PORTA, DDRA, PINA.

С портом B: PORTB, DDRB, PINB.

С портом C: PORTC, DDRC, PINC.

С портом D: PORTD, DDRD, PIND.

Состояние разрядов регистров DDRA, DDRB, DDRC, DDRD определяет направление передачи данных. Если DDR установлен в 0, то ввод, если 1, то вывод информации из МК.

Регистры PORTA, PORTB, PORTC, PORTD служат для организации вывода информации в порт. Информация записанная в эти регистры, выводиться на линии порта и далее поступает на внешнее устройство.

Регистры PINA, PINB, PINC, PIND служат для организации ввода информации из порта. Для ввода информации из порта достаточно прочитать содержание этих регистров какой либо командой.

15. Система команд. Команды пересылки.

Команды этой группы предназначены для пересылки содержимого ячеек, находящихся в адресном пространстве памяти данных. Разделение адресного пространства на три части (РОН, РВВ, ОЗУ) предопределило разнообразие команд данной группы. Пересылка данных, выполняемая командами группы, может производиться в следующих направлениях:

•РОН<>РОН;

•РОН РВВ;

•РОН <=> память данных.

Также к данной группе можно отнести стековые команды PUSH и POP, позволяющие сохранять в стеке и восстанавливать из стека содержимое РОН.

На выполнение команд данной группы требуется от одного до трех тактов, в зависимости от команды.

Все команды пересылки не влияют на регистр флагов.

MOV Rd,Rr; Rd ← Rr

Rd,Rr – регистры общего назначения

d= 0÷31

r= 0÷31

LDI Rd,k – загрузка в РОН константы

LD Rd,x – команда косвенной загрузки Rd ← [x] в регистр Rd заноситься содержимое ячейки памяти, находящейся в регистровой паре.

ST x,Rr – загрузка в ячейку памяти, адрес которой записан в регистровой паре [x] ←Rr

LDS Rd,A – в регистр Rd заноситься информация из ячейки с адресом А. Rd←[A]

LD Rd,X+ – косвенная загрузка с постинкрементном Rd ← [X]

LD Rd,X- – косвенная загрузка с декрементом Rd ← [X]

IN Rd,Rs – Rd ← Rs

OUT Rs,Rd – Rs ← Rd

Rs – регистр специального назначения

PUSH Rr – запись

POP Rd – извлечение из стековой области и помещение в Rd команды предназначенной для работы со стековой областью памяти служит регистр SP. Стековая область памяти заполняется в сторону уменьшения адресов. При выполнении команды PUSH запоминается адрес следующей ячейки памяти. Регистр указателя стека SP помещается в Rr (косвенное обращение)

POP – SP увеличивает на 1 и записывает в Rd.

SP – 16 разрядный размещается в системе регистров специального назначения

16. Система команд. Команды логических операций.

Эти команды позволяют выполнить стандартные логические операции над байтами, так же логическое умножение (И), логическое сложение (ИЛИ), операцию «исключающее ИЛИ», а так же вычисленные обратно (дополнение до единицы) и дополнительного (дополнение до двух) кодов числа. К этой группе можно отнести такие команды очистки/установки регистров и команды переустановки полубайтов. Операции производятся между регистрами общего назначения, либо между регистром и константой; результат сохраняется в РОН. Все команды в этой группе выполняются за один такт.

AND Rd,Rr – логическое «и» двух регистров Rd ← Rd Ʌ Rr

EOR Rd,Rr – логическое «исключающая или» двух регистров Rd ← Rd ⊕ Rr

ORI Rd,Rr – логическое «или» двух регистров Rd ← Rd V Rr

SLR Rd,k логическое «или» регистра и константы

SKR Rd – сброс всех битов регистра Rd

SER Rd – установка всех битов регистра Rd

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]