Архітектура CISC

CISC (англ. Complex Instruction Set Computer - комп'ютер зі складним набором команд) - це архітектура системи команд, в якій більшість команд є комплексними, тобто реалізують певний набір простіших інструкцій процесора або шляхом співставлення з кожною CISC-командою певної мікропрограми, або принаймні можуть бути зведені до набору таких простих інструкцій. CISC-архітектури відносяться, як правило, до класу двох адресних.

Архітектури з комплексними наборами команд, розвиток яких припав на кінець 60-х - 70-ті роки пропонували програмісту досить різноманітний набір порівняно високорівневих інструкцій машинної мови, таких, наприклад, як "виклик підпрограми" або "відняти одиницю та перейти, якщо результат ненульовий", а також велику кількість способів звертання до операндів в пам'яті для полегшення роботи зі складними структурами даних. В ті часи, за відсутності повноцінних мов програмування високого рівня та відповідних компіляторів, така апаратна підтримка високорівневого інструментарію програмування могла підвищити продуктивність праці програміста. До того ж, програма, складена з таких команд займала небагато в пам'яті комп'ютера. Типовими прикладами CISC-архітектур були системи VAX, PDP-11, IBM S/360,сімейства мікропроцесорів Motorola 68000 та Intel x86.

Для CISC-процесорів характерно:

ü порівняно невелике число регістрів загального призначення;

ü велика кількість машинних команд, деякі з яких навантажені семантично аналогічно операторам високорівневих мов програмування і виконуються за багато тактів;

ü велика кількість методів адресації;

ü велика кількість форматів команд різної розрядності;

ü переважання двох адресна формату команд;

ü наявність команд обробки типу регістр-пам'ять.

Недоліками архітектури CISC є нерегулярність потоку команд.