Co to jest zestaw instrukcji?
Zestaw instrukcji lub architektura zestawu instrukcji to zbiorczy zestaw poleceń, które procesor komputera może wykonać. Wszystko, co robi komputer, od uruchamiania edytora tekstu do kodowania plików wideo, można zredukować do pewnej kombinacji tych poleceń. Programiści nie tworzą programów bezpośrednio za pomocą tych instrukcji, ale używają specjalnego rodzaju oprogramowania znanego jako kompilator, który tłumaczy kod programowania na instrukcje maszynowe. Większość komputerów osobistych korzysta z zestawu instrukcji, który został po raz pierwszy użyty w latach siedemdziesiątych, podczas gdy smartfony, tablety i inne urządzenia korzystają z prostszych zestawów instrukcji zoptymalizowanych dla środowisk o niskim zużyciu energii.
Komputery mogą wydawać się zdolne do wykonywania nieograniczonych zadań, ale znajdujące się w nich mikroprocesory mogą wykonywać tylko ograniczoną liczbę wcześniej zdefiniowanych poleceń, zwanych instrukcjami. Sama każda instrukcja jest stosunkowo prosta, być może nakazując procesorowi dodanie dwóch liczb lub przeniesienie fragmentu danych z jednej lokalizacji do drugiej. W połączeniu te podstawowe instrukcje stają się dość potężne i stanowią podstawę wszystkich rodzajów oprogramowania. Wydajność i kompatybilność procesora jest bezpośrednio związana z liczbą i rodzajem instrukcji obsługiwanych przez procesor, co czyni zestaw instrukcji kluczowym elementem sukcesu komercyjnego lub niepowodzenia jakiegokolwiek nowego projektu.
Procesor może wykonywać tylko funkcje, które są częścią jego zestawu instrukcji, ale bardzo niewielu programistów komputerowych osadza te polecenia w swoim oprogramowaniu. Zamiast tego stosuje się etap pośredni znany jako kompilacja. W tym procesie program znany jako kompilator tłumaczy przyjazny dla człowieka kod używany przez programistów na „kod maszynowy”, który procesor rozumie. Ponieważ różne procesory komputerowe obsługują różne zestawy instrukcji, należy zaprojektować kompilator dla typu procesora, na którym program ma działać. Dzięki nowoczesnym mikroprocesorom zdolnym do wykonania nawet setek milionów, a nawet miliardów instrukcji w ciągu jednej sekundy, kompilatory stały się jedynym praktycznym sposobem tworzenia oprogramowania dla komputerów.
Mikroprocesory używane w prawie wszystkich komputerach osobistych sprzedawanych od lat 80. używają zestawu instrukcji o nazwie x86, który został pierwotnie zaprojektowany dla procesora Intel®, który zadebiutował w połowie lat 70. Pragnienie kompatybilności wstecznej pomogło utrzymać dominację x86 na rynku PC, chociaż nowe instrukcje są czasami dodawane poprzez rozszerzenia. Wiele smartfonów, tabletów i innych rodzajów elektroniki użytkowej korzysta z mikroprocesorów opartych na zestawie instrukcji ARM, który jest prostszy i bardziej energooszczędny niż x86. Zaawansowane serwery, superkomputery i inne wyspecjalizowane urządzenia, takie jak konsole do gier, mogą korzystać z różnych zestawów instrukcji.