Procesor (ang. processor), także CPU (ang. Central Processing Unit) – urządzenie cyfrowe sekwencyjne, które pobiera dane z pamięci, interpretuje je i wykonuje jako rozkazy. Wykonuje on ciąg prostych operacji (rozkazów) wybranych ze zbioru operacji podstawowych określonych zazwyczaj przez producenta procesora jako lista rozkazów procesora. Mikroprocesory wykonywane są zwykle jako układy scalone zamknięte w hermetycznej obudowie, często posiadającej złocone wyprowadzenia (stosowane ze względu na odporność na utlenianie). Ich sercem jest monokryształ krzemu, na który naniesiono techniką fotolitografii szereg warstw półprzewodnikowych, tworzących, w zależności od zastosowania, sieć od kilku tysięcy do kilkuset milionów tranzystorów. Połączenia wykonane są z metalu (aluminium, miedź). Jedną z podstawowych cech procesora jest długość (liczba bitów) słowa, na którym wykonywane są podstawowe operacje obliczeniowe. Jeśli słowo ma 64 bity, mówimy, że procesor jest 64-bitowy. Innym ważnym parametrem określającym procesor jest szybkość, z jaką wykonuje on rozkazy. Przy danej architekturze procesora, szybkość ta w znacznym stopniu zależy od czasu trwania pojedynczego taktu. Budowa logiczna mikroprocesora: W funkcjonalnej strukturze procesora można wyróżnić takie elementy, jak: • zespół rejestrów do przechowywania danych i wyników, rejestry mogą być ogólnego przeznaczenia lub mają specjalne przeznaczenie, • jednostkę arytmetyczną (arytmometr) do wykonywania operacji obliczeniowych na danych, • układ sterujący przebiegiem wykonywania programu, • inne układy, w które producent wyposaża procesor w celu usprawnienia jego pracy. Rozmiary elementów: Jednym z parametrów procesora jest rozmiar elementów budujących jego strukturę. Im są one mniejsze, tym niższe jest zużycie energii, napięcie pracy oraz wyższa możliwa do osiągnięcia częstotliwość pracy. Współczesne procesory używane w komputerach osobistych wykonywane są w technologii pozwalającej na uzyskanie elementów o rozmiarach 45 i 32 nm, pracujących z częstotliwością kilku GHz. Intel w 2012 roku wydał procesory wykonane w rozmiarze technologicznym 22 nm (Ivy Bridge). Wielordzeniowość i procesory pomocnicze: Większość współczenych procesorów ma wielordzeniową budowę. Pierwszym procesorem wielordzeniowym ogólnego przeznaczenia był procesor Power 4 firmy IBM wprowadzony na rynek w roku 2001. Pierwszymi procesorami wielordzeniowymi architektury x86 były wersje procesorów Opteron firmy AMD i Pentium Extreme Edition firmy Intel wprowadzone w kwietniu 2005 roku. Popularnym modelem firmy Intel, który kontynuował ten trend był Intel Pentium D. Prawdziwym przebojem stał się dopiero Intel Core 2 Duo zbudowany na bazie architektury Conroe (65 nm). W roku 2007 Intel zaprezentował testy układu scalonego wyposażonego w 80 rdzeni ogólnego przeznaczenia, który osiągnął wydajność ponad 1 Tflops. Do typowych rozkazów wykonywanych przez procesor należą: • kopiowanie danych • z pamięci do rejestru • z rejestru do pamięci • z pamięci do pamięci (niektóre procesory) • (podział ze względu na sposób adresowania danych) • działania arytmetyczne • dodawanie • odejmowanie • porównywanie dwóch liczb • dodawanie i odejmowanie jedności • zmiana znaku liczby • działania na bitach • iloczyn logiczny – AND • suma logiczna – OR • suma modulo 2 (różnica symetryczna) – XOR • negacja – NOT • przesunięcie bitów w lewo lub prawo • skoki • bezwarunkowe • warunkowe Układ sekwencyjny jest jednym z rodzajów układów cyfrowych. Charakteryzuje się tym, że stan wyjść y zależy od stanu wejść x oraz od poprzedniego stanu, zwanego stanem wewnętrznym, pamiętanego w zespole rejestrów (pamięci). Lista rozkazów procesora (ang. instruction set) – zestaw podstawowych instrukcji, jakie dany procesor potrafi wykonać. Producenci procesorów podają zazwyczaj szczegółowe informacje dotyczące każdego z rozkazów: • działania jakie dana instrukcja wykonuje: co dokładnie robi (algorytm), jak wpływa na stan procesora (zawartość rejestrów, modyfikacja rejestru flag itp.), jakie może spowodować błędy, itp.; • sposób kodowania rozkazu, tj. jego binarna postać rozpoznawana przez układ elektroniczny; • proponowane mnemoniki udostępniane przez asemblery. Rodzaje list rozkazów procesora: RISC (Reduced Instruction Set Computer) – nazwa architektury mikroprocesorów, która została przedstawiona pod koniec lat 70. Jej podstawowe cechy to: 1. Liczba rozkazów zredukowana do niezbędnego minimum. Wynosi ona kilkadziesiąt. Upraszcza to znacznie dekoder rozkazów. 2. Redukcja trybów adresowania, dzięki czemu kody rozkazów są prostsze, bardziej zunifikowane, co dodatkowo upraszcza wspomniany wcześniej dekoder rozkazów. 3. Ograniczenie komunikacji pomiędzy pamięcią a procesorem. 4. Zwiększenie liczby rejestrów (np. 32, 192, 256, podczas gdy np. w architekturze x86 jest zaledwie 8 rejestrów), co również ma wpływ na zmniejszenie liczby odwołań do pamięci. CISC (ang. Complex Instruction Set Computer) – architektura procesora o następujących cechach: • występowanie złożonych, specjalistycznych rozkazów (instrukcji), które do wykonania wymagają od kilku do kilkunastu cykli zegara, • szeroka gama trybów adresowania, • przeciwnie niż w architekturze RISC rozkazy mogą operować bezpośrednio na pamięci (zamiast przesłania wartości do rejestrów i operowania na nich), • powyższe założenia powodują, iż dekoder rozkazów jest skomplikowany.