- •Министерство образования и науки
- •Содержание
- •Информационный процесс, Сигналы
- •Логические состояния
- •Системы счисления
- •Логические элементы и таблица истинности
- •Логическое сложение, дизъюнкция, элемент или
- •Логическое умножение, конъюнкция, элемент и
- •Логический элемент не, отрицание, инверсия
- •Минимизация логических выражений с помощью карт карно
- •Карта карно для двух переменных
- •Карта карно с тремя переменными
- •Карта карно для четырех переменных
- •Комбинационные функциональные схемы
- •Счетверенная двухвходовая схема выборки
- •Мультиплексоры
- •Сумматоры
- •Компараторы
- •Обратные преобразования, записанные в дополнительном коде
- •Арифметика в дополнительном коде
- •Последовательная логика
- •Регистры
- •Параллельно – параллельный четырехразрядный регистр на rs – триггерах
- •Счетный триггер
- •Счетчики
- •Счетчик на сложение
- •Счетчик на вычитание
- •Реверсивный счетчик
- •Счетчик заданной длины
- •Линейные дешифраторы
- •Линейный дешифратор на 10
- •Основы микропроцессорной техники Архитектура эвм
- •Работа эвм
- •Группировки бит
- •Буквенно-цифровой код
- •Тристабильные элементы
- •Структура оперативной памяти
- •Основы микропроцессорной техники
- •Архитектура простой эвм
- •Структура простейшей памяти
- •Состав команд
- •Структура типового микропроцессора
- •Функционирование Эвм
- •Микропроцессор. Поставляемая разработчиком документация
- •Использование регистра, адреса / данных
- •Этапы обработки требования прерывания в микропроцессоре
- •Указатель стека
- •Программирование микропроцессора Состав команд арифметических действий
- •Состав команд логических операций
- •Команда или
- •Команда или – исключающее
- •Команда циклического сдвига с переносом
- •Состав команд операций передачи данных
- •Состав команд операций ветвления
- •Состав команд операций вызова подпрограмм и возврата в основную программу
- •Программирование микропроцессара запись программы
- •Ветвление программ
- •Использование подпрограмм
- •Интерфейс микропроцессора
- •Основные элементы интерфейса портов ввода/вывода
- •Список литературы
Состав команд
Группа команд, которая может выполнять данный микропроцессор (МП) называется его составом команд. В зависимости от типа МП и его назначения состав команд варьируется от 8 до 200.
Типовой МП представлен следующим составом команд, в соответствии с нормативами, предложенными научным обществом инженеров-электронщиков. К ним относятся: арифметические, логические, передачи данных, ветвление, вызова подпрограмм, возврата из подпрограмм и прочее.
В свою очередь эти группы команд делятся:
Арифметические - сложение, вычитание, инкремент, сравнение и отрицание.
Логические - И, ИЛИ, ИЛИ – исключающее, НЕ, а так же сдвиг вправо, сдвиг влево (часто встречаются команды циклического сдвига влево, вправо с переносом, тестированием и т.п.).
Передачи данных - загрузка, размещение, перемещение, ввод и вывод.
Ветвление - безусловный переход, переход, если ноль, переход, если не ноль, переход, если равенство, переход, если не равенство, переход, если положительно, переход, если отрицательно.
Вызов подпрограмм – это команда, предназначенная для того, чтобы программа могла перейти к специальной группе команд, которые решают поставленную задачу.
Последней командой в этой группе всегда стоит команда возврата из под программы. Прочими командами типового МП будут: нет операций, поместить в стек, выйти из стека, ожидание, остановка.
Структура типового микропроцессора
Центральным устройством вычислительной системы является МП, который содержит обычно элементы размещения данных называемые регистрами и устройства счета (арифметическое логическое устройство – АЛУ). МП содержит так же цепь декодирования команд и секцию управления и синхронизации. МП так же снабжен необходимыми соединениями с устройствами ввода/вывода.
Основными функциями МП являются:
Извлечение, декодирование и выполнение команд программы в указанном порядке.
Передача данных из памяти в память, а так же из устройств ввода/вывода и в устройство ввода/вывода.
Ответы на внешние прерывания.
Установка общей синхронизации и сигнал управления для всей системы.
АЛУ МП выполняет такие операции, как сложение, сдвиг/расстановка, сравнение, инкремент, декремент, отрицание, И, ИЛИ, ИЛИ – исключающее, дополнение, сброс, инициализация.

Рассмотрим, например, операцию сложения (ADD).

На рисунке содержимое аккумулятора ØАН складывается с содержимым регистра временного хранения данных Ø5Н. Сумма ØFН помещена в аккумулятор.
Рассмотрим подробнее состав АЛУ.

Типовое АЛУ содержит сумматор и устройство сдвига, а результаты арифметической операции пересылают обратно в аккумулятор, посредством внутренней шины данных. Регистр состояния слова в АЛУ является чрезвычайно важным устройством. Этот регистр состоит из группы триггеров, которые могут быть установлены или сброшены, исходя из результатов последней операции, выполненной АЛУ. Эти триггера содержат указатели (флаги) нуля, отрицательного результата, переноса и т.д.
Функционирование Эвм
Пусть требуется сложить числа 10+5+18=33. Программа для выполнения этой задачи может быть записана в следующей последовательности:
загрузить (LOAD) первое число (10) в МП;
сложить (ADD) второе число (5) с первым;
сложить (ADD) третье число (18) с двумя первыми;
поместить (STORE) сумму (33) в ячейку памяти с адресом 2ØØØН.


Операция показывает, что содержимым ячейки памяти 0001 загружено в аккумулятор, который содержит после этого 00001010 (0000А), т.е. первое слагаемое. В результате выполнения операции LOADпредыдущее содержимое аккумулятора стирается.

Операция ADD. Содержимое ячейки памяти 0003 складывается с содержимым аккумулятора, что дает суммуOF(00001111), помещаемую в аккумулятор.

Содержимое аккумулятора - сложение 00001111 сложена с содержимым ячейки памяти 0005 (00010010), т.е. выполнена операция.


Содержимое аккумулятора 00100001 передано и размещено в ячейку памяти с адресом 2000. Эта ячейка памяти была индефицирована в тексте программы двумя раздельными байтами (0007 и 0008). Таким образом, ячейка памяти программы 0006 содержит код операции (КОП) В7 прямой команды STORE, два следующих байта за ней указывают соответственно на старший и младший байты адреса.
Рассмотрим подробнее извлечение, декодирование и выполнение команды LOAD, размещенной по адресам 0000Н и 0001Н.

Извлечение.
Счетчик команд устанавливает адрес
первого шага программы. После этого
16-тиразрядный адрес передается в адресный
регистр, затем на ША и далее в память
программы. Для активации памяти программы
МП выдает сигнал - чтение памяти (1 на
линии R/
).
В то время как дешифратор адресов
активирует нужный кристалл памяти нулем
по линии
.
Затем счетчик команд инкрементируется
до 0001Н, ячейка памяти программы становится
доступной и ее содержимое 86 считывается
на ШД и далее передается в МП, в регистр
команд.
Декодирование.
![]()
Код операции 86, содержащийся в регистре команд МП интерпретируется дешифратором команд. МП определяет команду LOAD, сто означает загрузку им содержимого памяти, адреса, который следует непосредственно за кодом операции в аккумулятор.
Извлечение операнда.

Содержимое счетчика команд 0001 передается
в адресный регистр на ША и в память. МП
выдает импульс высоким уровнем на вход
R/
памяти, в тоже время импульс низкого
уровня поступает на вход выбор кристалла
памяти.
Счетчик команд инкрементируется до
0002, что подготавливает МП к извлечению
следующей команды. После этого ячейка
памяти 0001 становится доступной и ее
содержимое (Ø
)
поступает на ШД и в процессе выполнения
всей команды в аккумулятор.
