Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Микропроцессорная техника.doc
Скачиваний:
37
Добавлен:
01.05.2014
Размер:
3.96 Mб
Скачать

Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И.Ульянова (Ленина)

Кафедра САПР

Конспект лекций

«Микропроцессорная техника»

Лектор: Жуков К.Г.

Санкт-Петербург

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

Структура учебного компьютера. Назначение основных узлов. Команды монитора.

Расшифровка сокращений:

РВВ – регистр ввода

АК – аккумулятор

РО – регистр операнда

ПП – переполнение

РС – регистр слова

РА – регистр адреса

КОП – код операнда

ТА – тип адресации

А – адрес

СЧАК – счётчик адреса команды

РВЫВ – регистр вывода

МК – микрокоманда

Команды (директивы) управления программой «Монитор»

Цель:программа «Монитор» предназначена для обеспечения связи (взаимодействия) пользователя и компьютера с помощью специальных команд, называемых директивами.

Директивы можно разделить на следующие группы:

  1. Работа с памятью

  2. Работа с регистрами

  3. Управление

Директивы работы с памятью

Для записи программы в память необходимо выполнить следующую последовательность директив:

  1. Указать адрес ячейки памяти – директива РА. В окошечке РА набрать номер в виде двухразрядного числа от 0 до 99.

  2. В РС задаем содержимое ячейки памяти

  3. Запись. После нажатия кнопки «Запись» содержимое РА увеличивается на 1.

При чтении из памяти не требуется выполнять директиву РС. Содержимое ячейки отображается в окне РС.

Замечание: после выполнения управляющей директивы «СБРОС» содержимое памяти не изменяется.

Данные записываются и читаются аналогично, но в другой области памяти.

Директивы работы с регистрами

Для выбора соответствующего (РВВ, АК, СЧАК) необходимо выбрать определённую команду.

Замечание: После выполнение директивы «СБРОС» содержимое всех регистров обнуляется, кроме регистра ввода.

Директивы управления

Директиры управления в списке директив отсутствуют и выполняются в результате нажатия соотвествующих кнопок: СБРОС, ОСТАНОВ, АВТОМАТ, ЦИКЛ.

Представление числовых данных в учебном компьютере

Данные представляют собой 5-ти разрядные целые знаковые числа. Старший разряд является знаковым. Если в этом разряде 0 – число положительное, а если 1 – отрицательное.

Замечание: отрицательные числа в регистрах отбражаются в дополнительном коде.

Диапазон представления чисел: -9999....+9999

19999 – число -9999

09999 – число 9999

Формат команд

Минимальное значение операционной части

Максимальное значение операционной части

Коды операций лежат в пределах 0112

В компьютере 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 (в ассемблере ПА) в адресной части команды указан адрес ячейки памяти, в которой хранится операнд.

Например:

  1. СЛ ПА 26 => 03026

Содержимое аккумулятора станет равным содержимое аккумулятора + содержимое 26 ячейки, и результат поместится в аккумулятор.

  1. ЗАГР ПА 38 => 07038

По этой команде содержимое 38 ячейки запишется в аккумулятор.

При непосредственном способе адресации ТА=1 (в ассемблере НА) в адресной части команды находится сам операнд.

Например:

  1. ЗАГР НА 66 => 07166

К содержимому аккумулятора добавится число 66.

2) ЗАП НА 50 – не имеет смысла (так как НА)

При косвенном способе адресации ТА=2 (в ассемблере КА) в адресной части команды указан адрес ячейки памяти, в которой хранится адрес адреса операнда.

Например:

  1. ЗАП КА 27 => 08227

По этой команде содержимое аккумулятора запишется в ячейку памяти, адрес которой содержит ячейка 27.

  1. УМН КА 31 => 05231

Содержимое аккумулятора умножится на содержимое ячейки памяти, адрес которой в 31 ячейке.

КА необходима при работе с массивами – упорядоченной последовательности однотипных переменных.

Х { x1, х2, х3, … , хn} xi

При программировании на ассемблере вместо целочисленной переменной i необходимо использовать целочисленную переменную axi – адрес текущего элемента массива х.

Например:

<31> -> x1

<32> -> x2

Для реализации индексирования элементов – КА.