Команда ЭВМ представляет собой код, определяющий операцию вычислительной машины, и данные, участвующие в операции. В явной и неявной форме команда содержит также информацию об адресе, по которому помещается результат операции, и об адресе следующей команды.
По характеру выполняемых операций можно выделить следующие группы команд:
- команды арифметических операций для чисел с фиксированной или плавающей запятой;
- команды десятичной арифметики;
- команды передачи данных;
- команды операций ввода/вывода;
- команды логических операций;
- команды передачи управления;
- команды задания режима работы машины и др.
В команде, как правило, содержатся не сами операнды, а информация об адресах ячеек памяти или регистрах, в которых они находятся. Код команды можно представить состоящим из нескольких полей, каждое из которых имеет свое функциональное назначение. В общем случае команда состоит из операционной части, которая содержит код операции и адресной части, содержащей адресную информацию о местонахождении обрабатываемых данных и месте хранения результатов (рис. 8,а).



- суммирование кодов составляющих адреса (Аи = Б + С; Аи — И + С; Аи = Б + И + С);
- совмещение (конкатенация) кодов составляющих адреса (Аи = Б/С).
При базировании способом суммирования в команде адресный код Ак разделяется на две составляющие: Аб — адрес регистра в регистровой памяти, в котором хранится база Б (базовый адрес) и С — код смещения относительно базового адреса (рис. 12).


Система кодирования команд и способы адресации
Как через картинку проникнуть в компьютер ? (разбираем и защищаемся)
Источник: studfile.net
§ 2.5. Алгоритмы управления
Управление — это процесс целенаправленного воздействия на объект; осуществляется для организации функционирования объекта по заданной программе.
В середине прошлого века выдающийся американский учёный Норберт Винер (1894—1964), изучавший различные технические и биологические системы, установил, что управление в них осуществляется по общей схеме. Винер считается основоположником науки об управлении — кибернетики.
Управляемым объектом (объектом управления) может быть техническое устройство (например, автомобиль), один человек (например, ученик, солдат) или коллектив (например, оркестр, работники предприятия).
Управляющим объектом (управляющей системой) может быть человек (например, шофёр, дирижёр оркестра, учитель, директор), коллектив (например, правительство, парламент), а может быть и техническое устройство (например, автоматический регулятор, компьютер).
Последовательность команд по управлению объектом, приводящая к заранее поставленной цели, называется алгоритмом управления.
Простейшие алгоритмы управления могут состоять из одной команды или представлять собой линейную последовательность команд. Более сложные алгоритмы управления содержат ветвления и циклы.
Обратная связь. Алгоритмы управления
Для управления нужна информация. Во-первых, управляющий объект должен получить информацию о том, что ему нужно, т. е. он должен знать цель своих действий. Во-вторых, управляющий объект должен знать, как можно достичь поставленной цели. Важно, что информация о цели и способах её достижения должна быть известна управляющему объекту до начала процесса управления.
Пример 1. Рассмотрим управление движением автомашин (объект управления) на перекрёстке с помощью светофора (управляющий объект). В этой ситуации управляющее воздействие формируется в зависимости от заложенной в управляющем объекте исходной информации. Светофор не воспринимает текущую информацию о состоянии движения на перекрёстке, он не изменяет алгоритм управления от того, что с какой-то стороны скопилось очень много машин и образовалась «пробка».
Обратная связь — это процесс передачи информации о состоянии объекта управления в управляющую систему.
Обратная связь позволяет корректировать управляющие воздействия управляющей системы на объект управления в зависимости от состояния объекта управления (рис. 2.5). Обратная связь предусмотрена в ряде бытовых приборов (например, утюг с терморегулятором, холодильник, кастрюля-скороварка), в живых организмах, в обществе.
В настоящее время очень часто роль управляющей системы отводится компьютеру, в память которого заложена программа управления, предусматривающая все варианты информации, которые могут быть получены по обратной связи.
Пример 2. Если вместо обычного светофора на дорожном перекрёстке будет установлен «интеллектуальный» светофор — высокотехнологичное устройство, оснащённое датчиками, фиксирующими скорость движения на дороге и плотность транспортных потоков, то управление движением станет более рациональным за счёт учёта информации, поступающей от объекта управления.
САМОЕ ГЛАВНОЕ
Управление — процесс целенаправленного воздействия на объект; осуществляется для организации функционирования объекта по заданной программе.Последовательность команд по управлению объектом, приводящая к заранее поставленной цели, называется алгоритмом управления.
Вопросы и задания к § 2.5. Алгоритмы управления
1. Ознакомьтесь с материалами презентации к параграфу, содержащейся в электронном приложении к учебнику. Какими слайдами вы могли бы дополнить презентацию?
Источник: murnik.ru
Команды и адресация в микропроцессоре: форматы, структура, схемы
Входное воздействие в виде двоичного кода, предназначенное для управления микропроцессором, называется командой. Ее главная функция — выполнение операций над данными. Команда предписывает шаги по реализации микропроцессором заданной операции, представляющей собой функционально завершенное действие, которое определяется типом используемых данных, источником их получения, операцией над ними, приемником размещения результата, источником получения следующей команды. Машинное представление команды в памяти, состоящее из ряда нулей и единиц, называется объектным кодом команды. Для лучшего восприятия команды используется ее символическое обозначение или мнемокод.
Каждая команда должна содержать сведения, необходимые для ее выполнения. Сведения кодируются. Для кодировки каждой группы сведений выделяется свое поле. Совокупность полей, содержащих необходимые сведения для выполнения требуемой операции, называют форматом команды. В формате команды должны быть определены:
● функциональное назначение операции в виде кода операции;
● адреса источников данных. В общем случае должны быть указаны адреса двух операндов;
● адрес места расположения результата;
● адрес следующей команды.
Способы уменьшения формата команды.
Рассмотрим гипотетическую ситуацию. Допустим, что в формате команды:
● поле кода операций (КО) занимает 4 разряда, что позволяет закодировать 2 4 = 16 операций;
● под адреса двух операндов–источников, адрес места расположения результата, адрес следующей команды выделены поля А O 1, А O 2, АР, АСК (рис. 2.7.1) по 12 разрядов, что позволяет в каждом случае адресовать 2 12 = 4К ячеек памяти.
Как видно из рис. 2.7.1, несмотря на скромные возможности команды, ее общая длина составляет достаточно большое число (52) бит. Для сокращения количества разрядов команды часть информации должна быть задана неявно и не должна зависеть от особенностей конкретной команды.
Наиболее употребительными являются следующие способы сокращения длины кода команды:
● использование специально предусмотренных для адресации регистров: программного счетчика, указателя стека и др. Например, при выполнении команд с последовательно возрастающими адресами программный счетчик автоматически считывает из памяти следующую команду. В этом случае в формате команды отсутствует поле адреса следующей команды;
● использование неявных способов адресации. Например, при использовании неявной регистровой адресации адрес следующей команды или операнда хранится в регистре, код которого содержит значительно меньшее число разрядов, чем код исполнительного адреса;
● совмещение источника одного из операндов с приемником результата. В этом случае в формате команды исключается поле адреса результата;
● использование команд с укороченной адресацией, т. е. части адресного пространства памяти;
● использование для некоторой группы операций одного регистра. Наиболее часто для этой цели используется аккумулятор. В операциях с аккумулятором не требуется его кодировка. Например, команда ADD
В выполняет операцию сложение содержимого регистра В с аккумулятором А и в него же помещает результат. Такая команда является одноадресной. Ее формат состоит из двух полей: кода операции и адреса операнда. Однако одноадресные команды требуют дополнительных команд для предварительной загрузки операндов в аккумулятор и последующего размещения результатов в памяти;
● использование нескольких аккумуляторов (Motorola 6800, National РАСЕ, Signetic 2650). В этом случае каждая команда имеет два адреса, однако адрес источника и места назначения может быть задан другим аккумулятором. Следует отметить, что в одних процессорах все команды имеют одинаковую длину, в других — разную длину.
Одинаковая длина всех команд упрощает декодирование, однако требует большего пространства, поскольку все команды должны быть такой же длины, как самая длинная. Команды могут быть короче слова, равными слову или длиннее слова. В процессорах с неймановской архитектурой команды и данные имеют одинаковую длину и поступают в процессор по шине данных. Поэтому для отличия команд отданных в процессоре предусмотрены средства, обеспечивающие:
● засылку команд (первого байта) в регистр команд с дальнейшей их дешифрацией для активизации устройства управления;
● поступление данных (последующих байт) в аккумулятор или другие регистры для обработки в АЛУ.
Форматы команд некоторых процессоров.
Рассмотрим в общих чертах форматы команд 8–разрядного (8080) и 16–разрядного (8086) процессоров. Длина команды кратна байту и может составлять один, два и более байт.
Достаточно простые форматы имеют команды процессора 8080 (рис. 2.7.2). Длина команд составляет от 1 до 3 байт. Код операции всегда размещается в первом байте команды. Второй и третий байты отводятся под непосредственные данные, адрес порта или ячейки памяти.
В командах допускается явное задание только одного адреса памяти. Поэтому система команд процессора 8080 относится к классу одноадресных.
На рис. 2.7.3 изображены форматы команд процессора 8086. Длина команд составляет от 1 до 6 байт.
На рис. 2.7.2 и 2.7.3 обозначено: ОР — код операции; X — биты кода операции; dst , src — указатели приемника и источника данных; port — адрес порта; data — данные; addr — адрес памяти; w — тип операнда ( w = 0 — байт, w = 1 — слово); d — направление передачи ( d = 0 — «из», d = 1 — «в»); s — признак расширения байта в слово; reg — трехразрядное поле для кодирования регистров AL–BH; seg — двухразрядное поле для кодирования сегментных регистров; mod — определяет режим, заданный полем r / m (регистр/память); port 8 — короткий 8–разрядный адрес порта; disp — смещение; offset — смещение; sel — селектор; vect — вектор прерывания; v — сдвиговый флаг; cc — 4–разрядное поле, для кодирования 16 условий перехода.
Источник: pue8.ru