Operacje sprzętowe w komputerze:
odczyt z pamięci programu do procesora,odczyt z pamięci danych do procesora,zapis danych z procesora do pamięci danych, odczyt z układów wejścia-wyjścia do procesora,zapis danych z procesora do układów wejścia-wyjścia,bezpośredni odczyt z pamięci danych przez układy wejścia-wyjścia (ang. direct memory access, DMA),bezpośredni zapis do pamięci danych przez układy wejścia-wyjścia (ang. direct memory access, DMA),operacje na rejestrach wewnętrznych procesora,obsługa przerwań.
Elementy składowe komputera:
Szyna, magistrala (ang. bus) - wiązka przewodów lub zespół ścieżek na płytce obwodu drukowanego, do wzajemnej komunikacji pomiędzy elementami komputera. W definicji szyny, prócz samych przewodów sygnałowych, mieści się ściśle zdefiniowany protokół (standard) precyzujący zbiór komunikatów. Przykłady standardów szyn: ISA, PCI, SCSI, PCMCIA.
Jednostka centralna (ang. central processing unit, CPU) - element komputera, który pobiera i wykonuje rozkazy. Składa się z jednostki arytmetyczno-logicznej, jednostki sterującej, rejestrów, dekodera rozkazów. W przypadku komputerów jednoprocesorowych oznacza po prostu procesor. Natomiast, jeśli mówimy o komputerze wieloprocesorowym, CPU oznacza wszystkie procesory lub procesor nadrzędny.
Pamięć danych (ang. data memory) – pamięć do zapisu i odczytu przeznaczona do przechowywania danych.
Pamięć programu (ang. program memory) – pamięć do odczytu przeznaczona do przechowywania kodu programu.
Układ wejścia-wyjścia (ang. input-output circuit, I/O) - element komputera, służący do wymiany informacji między komputerem a urządzeniem zewnętrznym.
Elementy składowe procesora:
Jednostka arytmetyczno-logiczna zwana również arytmometrem (ang. Arithmetic Logical Unit), część procesora wykonująca podstawowe operacje arytmetyczne i logiczne, pobierającą argumenty działań z rejestrów procesora lub z pamięci oraz określająca znaczniki w rejestrze stanu procesora.
Typowe operacje wykonywane przez ALU:
suma logiczna OR (funkcja alternatywy),iloczyn logiczny AND (funkcja koniunkcji),różnica symetryczna EX-OR (funkcja różnowartościowości),negacja logiczna NOT,dodawanie i odejmowanie arytmetyczne liczb w naturalnym kodzie dwójkowym (NKB) i liczb dziesiętnych w kodzie BCD (ang. binary coded decimal),mnożenie i dzielenie arytmetyczne liczb w naturalnym kodzie dwójkowym (NKB) i liczb dziesiętnych (BCD),porównywanie logiczne dwóch sekwencji bitów,porównywanie arytmetyczne dwóch liczb,przesunięcia i rotacje,zerowanie, ustawianie, negowanie i testowanie bitów.
Typowe znaczniki (flagi) ustawiane w wyniku operacji:
zera (ang. zero, Z),znaku (ang. sign, S),parzystości (ang. parity, P),przepełnienia (ang. overflow, OV),przeniesienia (ang. carry, C),przeniesienia połówkowego (ang. auxiliary carry, AC).
Jednostka sterująca (ang. control unit) - część procesora, która zapewnia przebieg operacji zdefiniowanej kodem rozkazu, steruje przenoszeniem danych wewnątrz procesora oraz wymianą danych i sygnałów sterujących poprzez magistrale zewnętrzne.
Dekoder rozkazu (ang. instruction decoder) – dekoder tłumaczący kod rozkazu na mikrorozkazy realizowane przez układy wewnętrzne procesora.
Rejestr (ang. register) – część procesora przechowująca dane lub adres. Podstawowe rejestry procesora: akumulator (ang. accumulator, A, ACC),rejestry robocze (ang. general purpose registers),licznik rozkazów (ang. program counter, PC),wskaźnik stosu (ang. stack pointer, SP),rejestr stanu (wskaźników, flag) (ang. flag register, F, program status word, PSW),rejestr rozkazów (ang. instruction register, IR),pamięć podręczna (ang. cache memory) - jako zbiór rejestrów, rejestry buforowe danych i adresu (ang. buffer registers).
Cykl pracy komputera:
Cykl rozkazowy (ang. instruction cycle) - ciąg czynności, które wykonuje układ sterowania jednostki centralnej w czasie realizowania jednego rozkazu. Na cykl rozkazowy składają się: jednakowa dla wszystkich rozkazów faza pobrania, w której pobierany jest kod operacji z komórki pamięci o adresie zapisanym w liczniku rozkazów (zawartość licznika zwiększa się, a kod operacji jest dekodowany) oraz faza wykonania, w której następuje realizacja operacji wskazanej przez rozkaz. Jeżeli w treści wykonywanego rozkazu jest adres lub argument bezpośredni, to w fazie wykonywania może nastąpić kolejne zwiększenie zawartości licznika rozkazów. Na cykl rozkazowy składają się jeden lub kilka cykli maszynowych.