Архитектура процессора и набор команд служат границей между аппаратурой и программным обеспечением и представляет ту часть системы, которая видна программисту или разработчику компиляторов. Программисты, работающие на языках высокого уровня, могут этих различий и не видеть.
Двумя основными архитектурами набора команд, используемыми компьютерной промышленностью на современном этапе развития вычислительной техники являются архитектуры CISC (с большим числом команд) и RISC (с уменьшенным числом команд). Ранее RISC-процессоры определялись как микропроцессоры с количеством команд меньше 128, сейчас же они имеют 200 команд - для сравнения в CISC используется 300 и более команд.
Чтобы лучше понимать различия архитектур, нужно обратиться к системам команд:
Процессоры / Архитектуры / Системы команд
CISC
Основоположником CISC-архитектуры можно считать компанию IBM с ее базовой архитектурой IBM/360, ядро которой используется с 1964 года и дошло до наших дней, например, в таких современных мейнфреймах как IBM ES/9000. Лидером в разработке микропроцессоров с полным набором команд (CISC - Complete Instruction Set Computer) считается компания Intel со своей серией x86. Эта архитектура является практически стандартом для рынка персональных компьютеров.
Для CISC-процессоров характерно:
сравнительно небольшое число регистров общего назначения (8 - в процессорах x86)
большое количество машинных команд, некоторые из которых нагружены семантически аналогично операторам высокоуровневых языков программирования и выполняются за много тактов (например - умножение, представляется 17-ю RISC-инструкциями)
большое количество методов адресации (6 - 12 методов)
большое количество форматов команд различной разрядности (команды длиной в один байт, два байта, три байта и так далее)
преобладание двухадресного формата команд
наличие команд обработки типа регистр-память
Наиболее известная и популярная архитектура процессоров, для которых выпускались процессоры наверно десятком компаний, это серия x86.
Вычислительная архитектура с сокращенным набором машинных команд (RISC) реализует метод компьютерной обработки, использующий правило 80/20, по которому в 80% работы центрального процессора используется только малая часть общего набора команд микропроцессора. Причем наиболее сложные, редко используемые команды, можно заменить несколькими простыми. Создатели RISC-процессоров взяли этот уменьшенный, упрощенный набор команд и объединили его с такими технологиями, как конвейерная и параллельная обработка, которые позволяют микропроцессору выполнять множество команд за один процессорный цикл. В результате получился процессор, который имеет лучшую производительность для большинства приложений и теоретически стоит меньше, поскольку сам он небольшой и его производство обходится дешевле.
Процессоры архитектуры RISC придерживаются наиболее важных отличительных особенностей:
фиксированной длины команд
архитектуры регистр-регистр
простых способов адресации (2 - 3 метода)
простых (не требующих интерпретации) команд
большого регистрового файла (регистров > 10)
трехоперандного (неразрушительного) формата команд