Общая структура МПС
Система команд i8086
Система команд насчитывает 113 базовых команд, объединенных в следующие группы.
1) Команды передачи данных:
а) между регистрами и памятью (включая стек), обмен содержимым источника и приемника;
б) ввода, вывода, табличного преобразования;
в) загрузка исполнительного адреса в РОНы, загрузка 4-байтового адресного объекта в регистры-указатели (начальный адрес сегмента и смещение в сегменте);
г) передача содержимого регистра F флагов в память, в стек и из стека.
2) Арифметические команды:
+ - × / двоичных чисел со знаком и без знаков (произведение и делимое представляются числами двойной длины),
коррекция десятичная + - упакованных двоично-десятичных чисел,
коррекция десятичная + - × / распакованных двоично-десятичных чисел.
3) Логические команды и сдвиги:
инверсия, конъюнкция, дизъюнкция, неравнозначность;
TEST - поразрядная конъюнкция операндов с установкой флагов но без занесения результатов;
сдвиги на 1 или заданное число разрядов (константа сдвига располагается в CL).
4) Команды передачи управления:
переходы, вызовы, возвраты - имеют две разновидности - внутрисегментные ("близкие") и межсегментные ("дальние").
При близких передачах загружается только IP, при дальних - IP и CS. Передачи управления могут быть прямыми (целевой адрес - в команде) или косвенными (целевой адрес вычисляется с использованием стандартных режимов адресации)
В 16 командах условных переходов проверяются отношения знаковых и беззнаковых чисел. Имеются 4 команды управления циклами, которые рассчитаны на передачу числа повторений цикла в регистре CX.
5) Команды обработки цепочек данных
Команды манипулируют последовательностями байт или слов в памяти. Время обработки цепочек этими командами гораздо меньше, чем соответствующей программной реализацией.
Микропроцессор - центральная часть любой микропроцессорной системы (МПС) - включает в себя АЛУ и ЦУУ, реализующее командный цикл. МП может функционировать только в составе МПС, включающей в себя, кроме МП, память, устройства ввода/вывода, вспомогательные схемы (тактовый генератор, контроллеры прерываний и ПДП, шинные формирователи, регистры-защелки и др.).
В любой МПС можно выделить следующие основные части (подсистемы) :
· процессорный модуль;
· память;
· внешние устройства (внешние ЗУ + устройства ввода/вывода);
· подсистему прерываний;
· подсистему прямого доступа в память.
Связь между процессором и другими устройствами МПС может осуществляться по принципам радиальных связей, общей шины или комбинированным способом. В однопроцессорных МПС, особенно 8- и 16-разрядных, наибольшее распространение получил принцип связи "Общая шина", при котором все устройства подключаются к интерфейсу одинаковым образом (Рис. 3.1).
Рис. 3.1. Структура МПС с интерфейсом "Общая шина"
Все сигналы интерфейса делятся на три основные группы - данных, адреса и управления. Многочисленные разновидности интерфейсов "Общая шина" обеспечивают передачу по раздельным или мультиплексированным линиям (шинам). Например, интерфейс Microbus, с которым работают большинство 8-разрядных МПС на базе i8080, передает адрес и данные по раздельным шинам, но некоторые управляющие сигналы передаются по шине данных. Интерфейс Q-bus, используемый в микро-ЭВМ фирмы DEC (отечественный аналог - микропроцессоры серии К1801) имеет мультиплексированную шину адреса/данных, по которой эта информация передается с разделением во времени. Естественно, что при наличии мультиплексированной шины в состав линий управления необходимо включать специальный сигнал, идентифицирующий тип информации на шине.
Обмен информацией по интерфейсу производится между двумя устройствами, одно из которых является активным, а другое - пассивным. Активное устройство формирует адреса пассивных устройств и управляющие сигналы. Активным устройством выступает, как правило, процессор, а пассивным - всегда память и некоторые ВУ. Однако, иногда быстродействующие ВУ могут выступать в качестве задатчика (активного устройства) на интерфейсе, управляя обменом с памятью (т.н. режим прямого доступа в память - см. раздел 8).
Концепция "Общей шины" предполагает, что обращения ко всем устройствам МПС производится в едином адресном пространстве, однако, в целях расширения числа адресуемых объектов, в некоторых системах искусственно разделяют адресные пространства памяти и ВУ, а иногда даже и памяти программ и памяти данных.