- •Алгебра логики, алгебра Буля. Основные аксиомы.
- •Законы алгебры Буля. Дистрибутивный, коммутативный, ассоциативный.
- •Законы алгебры Буля. Поглощения, двойного отрицания, исключения.
- •Законы алгебры Буля. Де Моргана, идемпотентности.
- •Условное графическое обозначение логических элементов (стандарты).
- •Способы минимизации логических функций. Правило составления карты Карно.
- •Карта Карно для:
- •Для каждого контура выделяем области:
- •Способы минимизации логических функций. Правило составления диаграммы Вейча.
- •Комбинационная схема. Функция дешифратора.
- •Комбинационная схема. Функция шифратора.
- •Комбинационная схема. Функция мультиплексора.
- •Комбинационная схема. Функция демультиплексора.
- •Триггеры. Типы триггеров. Классификация Триггеров.
- •Регистры. Счетчики. Разновидность.
- •Архитектура Микроконтроллера. Структура типовой эвм.
- •Тактовая частота микроконтроллера. Изменения тактовой частоты.
- •Регистры общего назначения (рон) в микроконтроллерах.
- •Регистр признаков. Распиновка битов.
- •Регистры специального назначения. Регистр Программный счетчик.
- •Регистры специального назначения. Регистр указатель Стека.
- •Регистры специального назначения. Таймеры.
- •Регистры специального назначения. Ацп и цап.
- •Виды памяти в микроконтроллерах.
- •Преобразование последовательного кода в параллельный.
- •Преобразование параллельного кода в последовательный.
- •Язык Ассемблера. Синтаксис. Мнемокод.
- •Арифметические команды. Принцип работы.
- •Imul операнд_1[,операнд_2,операнд_3].
- •Логические команды. Принцип работы.
- •Команды вызова подпрограммы, особенности.
- •Команды переходов в программе, особенности.
- •Доказать следующие законы: дистрибутивный, поглощения.
- •1) Доказательство дистрибутивного закона
- •Доказательство закона поглощения
- •Доказать следующие законы: идемпотентности, двойного отрицания.
- •Доказательство закона идемпотентности
- •Доказательство закона двойного отрицания
- •Доказать следующий законы: исключения, коммутативный.
- •Минимизировать произвольную логическую функцию с помощью диаграмм Вейча. Каскадное подключение дешифраторов, увеличение разряда дешифратора на n.
- •Каскадное подключение демультиплексора, увеличение разряда демультиплексора на n.
- •Реализовать rs триггер на элементах или-не.
- •Реализовать rs триггер на элементах и-не.
- •Основные команды по работе с триггерами общего назначения. Основные команды по работе с триггером признаков. Назначение регистра pc. И принцип работы с ним.
- •Назначения регистра sp. И принцип работы с ним.
- •Назначения регистра watchdog. И принцип работы с ним.
- •Работа с Flash-памятью микроконтроллера.
- •Работа с eeprom памятью микроконтроллера. (https://cxem.Net/mc/book.Php )
Регистр признаков. Распиновка битов.
Регистр флагов -- иногда его называют регистром признаков — EFLAGS. Он состоит из одноразрядных флагов, отображающих в основном текущее состояние арифметико-логического устройства.
Признак нуля ZF (Zero Flag) — 1, если результат предыдущей операции равен нулю.
Признак знака SF (Sign Flag) — 1, если результат предыдущей операции отрицательный.
Признак переполнения OF (Overflow Flag) — 1, если при выполнении предыдущей операции произошло переполнение (overflow), то есть результат операции больше, чем зарезервированная для него память.
Признак переноса CF (Carry Flag) — 1, если бит был «перенесен» и стал битом более высокого порядка (в арифметических командах)
Признак прерывания IF (Interrupt Flag) — 1, если прерывания процессора разрешены.
Признак направления DF (Direction Flag) — используется для обработки строк
Распиновка битов:
С помощью побитовых логические операции "И" и "ИЛИ" - оператор логическое "ИЛИ" записывается в виде вертикальной черты - "|" и может выполнятся между двумя переменными, а также между переменной и константой. Применение операции "ИЛИ" между двумя битами даёт в результате единственное значение - 1 (если хотя бы один из битов, к которому применяется оператор равен единице) или 0 (если оба бита равны нулю).
При помощи битовой маски - битовая маска — это обычная константа с единичным N-ым битом. Находится она по формуле 2^N.
Регистр статуса (регистр состояния или регистр флагов) - это специальный регистр, который есть в любом процессоре, микропроцессоре или микроконтроллере.
Регистр состояния (Status Register) содержит данные об итоге выполнения последней арифметической или логической операции. Эти данные можно использовать для управления ходом программы с инструкциями условного перехода.
Обратите внимание, что регистр состояния обновляется после всех операций АЛУ (арифметико-логического устройства), как указано в справочнике по набору команд.
SREG - это регистр состояния в AVR. Это 8-разрядный регистр, в котором каждый бит (разряд) отображает состояние какой-либо операции (или результата операции).
Каждый бит (флаг) доступен как для чтения, так и для записи. При инициализации все биты равны нулю.
Адрес регистра SREG - 0x3F (в шестнадцатеричной системе).
Каждый из битов (флагов) этого регистра можно установить, сбросить или проверить отдельно с помощью команд общего назначения или специально предусмотренных для этого команд, которые работают только с определённым флагом. Распиновка битов показана на рисунке.
Флаг I (бит 7): Global Interrupt Enable (Флаг глобального разрешения прерываний).
Для включения прерываний флаг I должен быть установлен. Затем управление включением отдельных прерываний выполняется в отдельных регистрах управления. Если флаг I сброшен, ни одно из прерываний не включено, независимо от настроек отдельного прерывания. Флаг I очищается аппаратным обеспечением после завершения прерывания (автоматически сбрасывается), а устанавливается инструкцией RETI для включения последующих прерываний. Флаг I также может быть установлен и очищен инструкциями SEI и CLI, как описано в документации.
Флаг T (бит 6): Bit Copy Storage (Хранение Копируемого Бита)
Инструкции копирования бита (Bit Copy), то есть инструкции BLD (Bit LoaD) и BST (Bit STore), используют флаг T как источник или приёмник при операциях с битом. Бит из регистра в Регистре Файла (Register File) можно скопировать в бит Т с помощью инструкции BST, а состояние флага Т можно скопировать в бит регистра Регистра Файла при помощи команды BLD.
Флаг H (бит 5): Half Carry Flag (Флаг половинного переноса)
Флаг полупереноса H указывает на полуперенос в некоторых арифметических операциях. Полуперенос полезен в арифметике BCD.
Флаг полупереноса ведёт себя также, как флаг обычного переноса, только он связан с младшей тетрадой. Например,
01011010 = 90
+
00001111 = 15
=
01101001 = 105
При выполнении этой операции будет установлен флаг полупереноса, так как произошёл перенос из третьего бита (старшего бита младшей тетрады).
Флаг S (бит 4): Sign Bit (Флаг знака)
S = N (+) V (исключающее или между флагами N и V)
Флаг S равен итогу операции исключающего или между флагом отрицательного результата N и флагом переполнения V.
Флаг V (бит 3): Two’s Complement Overflow Flag (Флаг переполнения дополнительного кода)
Флаг V поддерживает арифметику дополнения до двух. Более подробно об этом в описании набора команд процессора.
Флаг N (бит 2): Negative Flag (Флаг отрицательного значения)
Флаг N указывает на то, что результат арифметической или логической операции был отрицательным.
Флаг Z (бит 1): Zero Flag (Флаг нуля)
Флаг Z указывает на то, что результат арифметической или логической операции равен нулю.
Флаг C (бит 0): Carry Flag (Флаг переноса)
Флаг C указывает на перенос при арифметической или логической операции.