Систе́ма кома́нд (также набо́р команд) — соглашение о предоставляемых архитектурой средствах программирования, а именно:
определённых типах данных,
инструкций,
системы регистров,
методов адресации,
моделей памяти,
способов обработки прерываний и исключений,
методов ввода и вывода.
Система команд представляется спецификацией соответствия (микро)команд наборам кодов (микро)операций, выполняемых при вызове команды, определяемых (микро)архитектурой системы. (При этом на системах с различной (микро)архитектурой может быть реализована одна и та же система команд. Например, Intel Pentium и AMD Athlon имеют почти идентичные версии системы команд x86, но имеют радикально различный внутренний дизайн.)
Базовыми командами являются, как правило, следующие:
арифметические, например, «сложения» и «вычитания»;
битовые, например, «логическое и», «логическое или» и «логическое не»;
присваивание данных, например, «переместить», «загрузить», «выгрузить»;
ввода-вывода, для обмена данными с внешними устройствами;
управляющие инструкции, например, безусловный, условный или косвенный переход, вызов подпрограммы, возврат из подпрограммы.
Оптимальными в различных ситуациях являются разные способы построения системы команд:
Если объединить наиболее часто используемую последовательность микроопераций под одной микрокомандой, то надо будет обеспечивать меньше микрокоманд. Такое построение системы команд носит название CISC (Complex Instruction Set Computer), в распоряжении имеется небольшое число составных команд.
С другой стороны, это объединение уменьшает гибкость системы команд. Вариант с наибольшей гибкостью — наличие множества близких к элементарным операциям команд. Это RISC (Reduced Instruction Set Computer), в распоряжении имеются усечённые, простые команды.
Ещё большую гибкость системы команд можно получить, используя MISC-подход, построенный на уменьшении количества команд до минимального и упрощении вычислительного устройства обработки этих команд.
определённых типах данных,
инструкций,
системы регистров,
методов адресации,
моделей памяти,
способов обработки прерываний и исключений,
методов ввода и вывода.
Система команд представляется спецификацией соответствия (микро)команд наборам кодов (микро)операций, выполняемых при вызове команды, определяемых (микро)архитектурой системы. (При этом на системах с различной (микро)архитектурой может быть реализована одна и та же система команд. Например, Intel Pentium и AMD Athlon имеют почти идентичные версии системы команд x86, но имеют радикально различный внутренний дизайн.)
Базовыми командами являются, как правило, следующие:
арифметические, например, «сложения» и «вычитания»;
битовые, например, «логическое и», «логическое или» и «логическое не»;
присваивание данных, например, «переместить», «загрузить», «выгрузить»;
ввода-вывода, для обмена данными с внешними устройствами;
управляющие инструкции, например, безусловный, условный или косвенный переход, вызов подпрограммы, возврат из подпрограммы.
Оптимальными в различных ситуациях являются разные способы построения системы команд:
Если объединить наиболее часто используемую последовательность микроопераций под одной микрокомандой, то надо будет обеспечивать меньше микрокоманд. Такое построение системы команд носит название CISC (Complex Instruction Set Computer), в распоряжении имеется небольшое число составных команд.
С другой стороны, это объединение уменьшает гибкость системы команд. Вариант с наибольшей гибкостью — наличие множества близких к элементарным операциям команд. Это RISC (Reduced Instruction Set Computer), в распоряжении имеются усечённые, простые команды.
Ещё большую гибкость системы команд можно получить, используя MISC-подход, построенный на уменьшении количества команд до минимального и упрощении вычислительного устройства обработки этих команд.
Источник: Wipedia.org