- •Введение
- •Преобразователи
- •1.1. Назначение и виды цифро- аналоговых преобразователей
- •1.2. Основные параметры цап
- •1.3. Принципы построения цап
- •Выходное напряжение для схемы, приведенной на рис.1.3, определяется формулой
- •Напряжение на выходе операционного усилителя определяется выражением
- •1.4. Серийные микросхемы цап
- •Характеристики интегральных микросхем цап
- •Контрольные вопросы:
- •Преобразование сигналов
- •2.1. Принципы аналого-цифрового преобразования сигналов
- •Для сигналов с ограниченным спектром теорема отсчетов имеет вид
- •2.2. Основные характеристики ацп
- •2.3. Принципы построения ацп
- •Контрольные вопросы:
- •3.4. Представление дробных чисел в двоичном коде с
- •3.5. Представление чисел в двоичном коде с плавающей
- •3.2. Знаковые обратные двоичные коды
- •3.3. Знаковые дополнительные двоичные коды
- •3.4. Представление дробных чисел в двоичном коде с фиксированной запятой
- •3.5. Представление чисел в двоичном коде с плавающей запятой
- •3.6. Запись десятичных чисел
- •3.7. Суммирование двоично- десятичных чисел
- •3.8. Арифметико-логические устройства
- •4.1. Функции микропроцессорных систем и микро-эвм
- •4.2. Принципы построения микропроцессорных систем и
- •4.2. Принципы построения микропроцессорных систем и микро-эвм
- •4.3. Структура и функционирование микропроцессорных систем
- •4.4. Микроконтроллеры
- •4.5. Микропроцессорные комплекты и микро-эвм
- •(Intel 8085a)
- •5.3. Синхронизация и последовательность действий мп
- •5.4. Система прерываний
- •5.2. Блок регистров
- •5.3. Синхронизация и последовательность действий мп
- •5.4. Система прерываний
- •6. Команды микропроцессора
- •7.1. Понятие системной шины микропроцессора
- •7.2. Адресное пространство микропроцессорного
- •7.3. Способы расширения адресного пространства
- •7.2. Адресное пространство микропроцессорного устройства
- •7.3. Способы расширения адресного пространства микропроцессора
- •8. Параллельный порт
- •9. Последовательный порт
- •9.1. Синхронный последовательный порт
- •9.2. Асинхронный последовательный порт
- •9.1. Синхронный последовательный порт
- •9.2. Асинхронный последовательный порт
- •10. Статические оперативные запоминающие устройства
- •11. Постоянные запоминающие устройства
- •11.1. Пзу на основе мультиплексора
- •11.2. Масочные пзу
- •11.3. Программируемые пзу
- •11.4. Пзу с ультрафиолетовым стиранием
- •11.5. Электрически стираемые ппзу
- •11.6. Flash - пзу
- •12. Подключение внешних устройств к микропроцессору
- •13. Шинные формирователи
- •14. Принципы построения таймеров
6. Команды микропроцессора
Команды микропроцессора в отличие от микрокоманд разрабатываются независимо от аппаратуры микросхемы, поэтому их разрядность обычно совпадает с разрядностью микропроцессора. Команда микропроцессора состоит из инструкции и обозначается код операции КОП (или INS в англоязычной литературе). Команда микропроцессора может состоять только из кода операции, когда не требуется указывать адрес операнда (операнды это данные, над которыми команда производит какое либо действие), или может состоять из кода операции и адресов операндов или данных. Форматы команд очень сильно зависит от структуры процессора. Рассмотрим построение команд для восьмиразрядного процессора. Примеры построения команд для такого процессора приведены на рис. 6.1.
Рис. 6.1. Форматы различных команд микропроцессора
Если для кода операции используется восьмибитное слово (байт), то при помощи этого слова можно закодировать 256 операций. В процессе разработки системы команд для операции может быть назначен любой код. Именно системой команд и определяется конкретное семейство процессоров. Однобайтовые команды позволяют работать с внутренними программно доступными регистрами процессора.
Для выполнения одной и той же операции над разными регистрами процессора назначаются разные коды. Запоминать эти коды очень утомительно для человека. При программировании в машинных кодах легко совершить ошибку и очень трудно найти её, особенно если коды различаются только на один бит. Для сокращения объёма записи вместо двоичного можно воспользоваться шестнадцатиричным кодом, однако это не увеличивает наглядности программы. Фрагмент исполняемого кода микропроцессора приведён на рис. 6.2.
Рис. 2. Фрагмент исполняемого кода микропроцессора
Чтобы уменьшить объём запоминаемой информации и увеличить наглядность исходного текста программы, каждой операции процессора придумывают мнемоническое обозначение. В качестве мнемонического обозначения операции обычно используют сокращения английских слов, обозначающих эту операцию.
Например:
для операции копирования используется мнемоническое обозначение MOV;
для операции суммирования используется мнемоническое обозначение ADD;
для операции вычитания используется мнемоническое обозначение SUB;
для операции умножения используется мнемоническое обозначение MUL и т.д.
Для полного обозначения команды используется мнемоническое обозначение операции и используемые ею операнды, которые перечисляются через запятую. При этом в большинстве процессоров операнд приёмник информации записывается первым, а операнд источник информации вторым.
Например:
MOV R0, A ; Скопировать содержимое регистра A в регистр R0.
ADD A, R5 ; Просуммировать содержимое регистров R5 и A, результат поместить в регистр A.
Приведённые выше команды - это однобайтовые команды, так как в них используются только внутренние регистры процессора. Если в команде используется константа в качестве операнда или указывается адрес операнда в системной памяти, то команда будет занимать в системной памяти два или три байта.
Например:
MOV A, 1025 ; Скопировать содержимое 1025 ячейки памяти в регистр A.
ADD A, #110 ; Просуммировать содержимое регистра A с числом 110.
Несмотря на то, что общий объём исходного текста программы увеличивается, скорость написания и особенно отладки программ в таком виде возрастает. Теперь вместо одного текста программы в памяти компьютера или на бумаге придется хранить два текста: один для человека, который в дальнейшем будем называть исходным текстом программы; другой для микропроцессора, который в дальнейшем будем называть загрузочным модулем.
Преобразование программы, записанной в мнемоническом виде, в машинные коды является рутинной работой, которую можно поручить компьютерной программе. Язык программирования в котором для обозначения машинных команд используются мнемонические обозначения называется ассемблером. Точно так же называют и программу или пакет программ, которая осуществляет трансляцию (преобразование) исходного текста программы (исходный модуль) в машинные коды (загрузочный модуль).
7. СИСТЕМНАЯ ШИНА
МИКРОПРОЦЕССОРА