- •Команды (директивы) управления программой «Монитор»
- •Директивы работы с памятью
- •Директивы работы с регистрами
- •Способы адресации
- •Выполнение на ассемблере последовательных алгоритмов с различными способами адресации при выполнении арифметических операций
- •Реализация ветвящихся процессов. Команды условных переходов
- •Команды для переходов учебного компьютера
- •Синтаксис команд безусловного перехода
- •Реализация на ассемблере циклических программ
- •Анализ и синтез комбинационных схем
- •Понятие основных (базовых) и базисных функций двух переменных
- •Построение одноразрядного полного сумматора
- •Формальный синтез полного одноразрядного сумматора на основе булевой алгебры
- •Разорванные группы
- •Формы представления чисел
- •Примеры представления чисел с фиксированной точкой в формате sfix()
- •Достоинства и недостатки представления чисел с фиксированной точкой
- •Представление данных в форме с плавающей точкой
- •Видоизменённая (современная) форма представления чисел с плавающей точкой
- •Особенности микроконтроллеров семейства avr atmel
- •Адресное пространство мк avr (распределение памяти)
- •Регистр состояния, регистр флагов.
- •Системы команд процессоров atmel
Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И.Ульянова (Ленина)
Кафедра САПР
Конспект лекций
«Микропроцессорная техника»
Лектор: Жуков К.Г.
Санкт-Петербург
2006
Содержание
Структура учебного компьютера. Назначение основных узлов. Команды монитора…….…3
Команды (директивы) управления программой «Монитор»………………………………3
Представление числовых данных в учебном компьютере………………………………..4
Выполнение на ассемблере последовательных алгоритмов с различными способами адресации при выполнении арифметических операций………………………………6
Реализация ветвящихся процессов. Команды условных переходов………………………….8
Команды переходов учебного компьютера…………………………….…………………….9
Реализация на ассемблере циклических программ……………………………..……….11
Анализ и синтез комбинационных схем…..............................................................................13
Понятие основных (базовых) и базисных функций двух переменных…………………14
Построение одноразрядного полного сумматора…………………………………………16
Формальный синтез полного одноразрядного сумматора на основе булевой алгебры…………………………………………………………………………………………………..17
Разорванные группы……………………………………………………………………………19
Формы представления чисел……………………………………………………………………….20
Примеры представления чисел с фиксированной точкой в формате sfix()…………..23
Видоизменённая (современная) форма представления чисел с плавающей точкой………………………………………………………………………………………………….25
Особенности микроконтроллеров семейства AVR ATMEL…………………………………….28
Адресное пространство МК AVR (распределение памяти)……………………………...29
Регистр состояния, регистр флагов………………………………………………………….29
Системы команд процессоров ATMEL………………………………………………………30
Структура учебного компьютера. Назначение основных узлов. Команды монитора.
Расшифровка сокращений:
РВВ – регистр ввода
АК – аккумулятор
РО – регистр операнда
ПП – переполнение
РС – регистр слова
РА – регистр адреса
КОП – код операнда
ТА – тип адресации
А – адрес
СЧАК – счётчик адреса команды
РВЫВ – регистр вывода
МК – микрокоманда
Команды (директивы) управления программой «Монитор»
Цель:программа «Монитор» предназначена для обеспечения связи (взаимодействия) пользователя и компьютера с помощью специальных команд, называемых директивами.
Директивы можно разделить на следующие группы:
Работа с памятью
Работа с регистрами
Управление
Директивы работы с памятью
Для записи программы в память необходимо выполнить следующую последовательность директив:
Указать адрес ячейки памяти – директива РА. В окошечке РА набрать номер в виде двухразрядного числа от 0 до 99.
В РС задаем содержимое ячейки памяти
Запись. После нажатия кнопки «Запись» содержимое РА увеличивается на 1.
При чтении из памяти не требуется выполнять директиву РС. Содержимое ячейки отображается в окне РС.
Замечание: после выполнения управляющей директивы «СБРОС» содержимое памяти не изменяется.
Данные записываются и читаются аналогично, но в другой области памяти.
Директивы работы с регистрами
Для выбора соответствующего (РВВ, АК, СЧАК) необходимо выбрать определённую команду.
Замечание: После выполнение директивы «СБРОС» содержимое всех регистров обнуляется, кроме регистра ввода.
Директивы управления
Директиры управления в списке директив отсутствуют и выполняются в результате нажатия соотвествующих кнопок: СБРОС, ОСТАНОВ, АВТОМАТ, ЦИКЛ.
Представление числовых данных в учебном компьютере
Данные представляют собой 5-ти разрядные целые знаковые числа. Старший разряд является знаковым. Если в этом разряде 0 – число положительное, а если 1 – отрицательное.
Замечание: отрицательные числа в регистрах отбражаются в дополнительном коде.
Диапазон представления чисел: -9999....+9999
19999 – число -9999
09999 – число 9999
Формат команд
Минимальное значение операционной части
Максимальное значение операционной части
Коды операций лежат в пределах 0112
В компьютере 100 ячеек памяти.
В зависимости от типа адресации исполнительный адрес содержит:
Адрес операнда
Значение операнда
Адрес адреса операнда
Замечание: при непосредственном способе адресации операнд лежит в пределах от 0 до 99.
Система команд и назначение
01 – команда ввода «ВВ»; АК:=РВВ
02 – команда вывода «Выв»; РВЫВ:=АК
03 – команда сложения «Сл»; АК:=АК+[А]
04 – команда вычитания «Выч»; АК:=АК-[А]
05 – команда умножения «Умн»; АК:=АК*[А]
06 – команда деления «Дел»; АК:=АК/[А]
Замечание: при прямом способе адресации содержимое [А] есть адрес ячейки памяти. Для непосредственного [А] – операнд (значение). А для косвенного [А] – адрес адреса.
07 – команда загрузить «Загр»; АК:=[А]
08 – команда записать «Зап»; [А]:=АК
Замечание: команда 08 работает только для прямого и косвенного способов адресации.
09 – условный переход по нулю «УПО»; JZ
10 - условный переход по знаку «УППЗН»; JMp
ЗНАК=1?, то СЧАК:=[A]
ЗНАК=0?, то СЧАК:=СЧАК+1
11 – безусловный переход «БП»; СЧАК:=[A], JP
Замечание: команда 11 работает только с двумя способами адресации – прямым и
12 – остановка «ост»; stop
Способы адресации
При прямом способе адресации ТА=0 (в ассемблере ПА) в адресной части команды указан адрес ячейки памяти, в которой хранится операнд.
Например:
СЛ ПА 26 => 03026
Содержимое аккумулятора станет равным содержимое аккумулятора + содержимое 26 ячейки, и результат поместится в аккумулятор.
ЗАГР ПА 38 => 07038
По этой команде содержимое 38 ячейки запишется в аккумулятор.
При непосредственном способе адресации ТА=1 (в ассемблере НА) в адресной части команды находится сам операнд.
Например:
ЗАГР НА 66 => 07166
К содержимому аккумулятора добавится число 66.
2) ЗАП НА 50 – не имеет смысла (так как НА)
При косвенном способе адресации ТА=2 (в ассемблере КА) в адресной части команды указан адрес ячейки памяти, в которой хранится адрес адреса операнда.
Например:
ЗАП КА 27 => 08227
По этой команде содержимое аккумулятора запишется в ячейку памяти, адрес которой содержит ячейка 27.
УМН КА 31 => 05231
Содержимое аккумулятора умножится на содержимое ячейки памяти, адрес которой в 31 ячейке.
КА необходима при работе с массивами – упорядоченной последовательности однотипных переменных.
Х { x1, х2, х3, … , хn} xi
При программировании на ассемблере вместо целочисленной переменной i необходимо использовать целочисленную переменную axi – адрес текущего элемента массива х.
Например:
<31> -> x1
<32> -> x2
…
Для реализации индексирования элементов – КА.