Architektura zestawu instrukcji
Architektura zestawu instrukcji procesora (ang. instruction set architecture, ISA), model programowy procesora − ogólne określenie dotyczące organizacji, funkcjonalności i zasad działania procesora, widoczne z punktu widzenia programisty jako dostępne mechanizmy programowania. Na model programowy procesora składają się, między innymi:
- lista rozkazów procesora,
- typy danych,
- dostępne tryby adresowania,
- zestaw rejestrów dostępnych dla programisty,
- zasady obsługi wyjątków i przerwań.
Procesory posiadające ten sam model programowy są ze sobą kompatybilne, co oznacza, że mogą wykonywać te same programy i generować te same rezultaty. W początkowej historii procesorów model programowy procesora zależał od fizycznej implementacji procesora i niejednokrotnie całkowicie z niej wynikał. Obecnie tendencja jest odwrotna i stosuje się bardzo różne implementacje fizyczne (mikroarchitektury) pochodzące od różnych producentów, natomiast realizujące ten sam ISA.
Klasyfikacja ISA
[edytuj | edytuj kod]ISA można klasyfikować na wiele różnych sposobów. Powszechną klasyfikacją jest architektoniczna złożoność. Procesor o złożonym zestawie instrukcji (CISC) zawiera wiele instrukcji specjalistycznych, z których niektóre mogą być rzadko używane w programach praktycznych. Procesor ze zredukowanym zestawem instrukcji (RISC) upraszcza procesy, skutecznie implementując tylko instrukcje, które są często używane w programach, podczas gdy mniej powszechne operacje są implementowane jako podprogramy, których wynikowy dodatkowy czas wykonania procesora jest przesunięty przez rzadkie użycie[1].
Inne typy to, VLIW, LIW i EPIC. Te architektury starają się wykorzystać równoległość na poziomie instrukcji przy mniejszej ilości sprzętu niż CISC i RISC, czyniąc kompilator odpowiedzialnym za wydawanie instrukcji i planowanie.
Zbadano architektury o jeszcze mniejszej złożoności, takie jak komputer z minimalnym zestawem instrukcji MISC i OISC. Są to teoretycznie ważne typy, ale nie zostały skomercjalizowane.
- CISC (ang. Complex Instruction Set Computing) – mikroprocesor ma bogaty zestaw instrukcji o dużych możliwościach,
- RISC (ang. Reduced Instruction Set Computing) – ma prostszy i mniejszy zestaw instrukcji,
- VLIW (ang. Very Long Instruction Word) – pozwala na łączenie wielu prostych instrukcji w jeden wielki opcode,
- MISC (ang. Minimal Instruction Set Computing) – posiada minimalny zestaw instrukcji,
- ZISC (ang. Zero Instruction Set Computing) – ma zerowy zestaw instrukcji.
Zobacz też
[edytuj | edytuj kod]Przypisy
[edytuj | edytuj kod]- ↑ RISC Architecture: RISC vs. CISC. [dostęp 2021-12-04]. [zarchiwizowane z tego adresu (2021-12-04)]. (ang.).