Architektura Von Neumanna i Procesory
Budowa współczesnego komputera. Gdzie są przetwarzane dane, a gdzie przechowywane instrukcje?
Architektura Komputera (Model Von Neumanna)
W latach 40. XX wieku matematyk John von Neumann opisał genialny model architektury komputera. Okazał się on tak perfekcyjny, że Twój laptop, Twój iPhone i gigantyczne serwery Google... w 99% nadal działają dokładnie na tym schemacie!
Na maturze musisz znać pięć elementów tego schematu i wiedzieć, jak podróżują między nimi dane.
5 Składowych Architektury Von Neumanna
1. ALU (Jednostka Arytmetyczno-Logiczna)
Robotnik procesora. To tutaj odbywa się właściwe dodawanie, odejmowanie i operacje logiczne (AND, OR, XOR z poprzedniej lekcji!).
2. CU (Jednostka Sterująca / Control Unit)
Mózg procesora. Pobiera z pamięci instrukcje (kody), rozkodowuje je i wysyła sygnały do ALU mówiące mu, czy w danej chwili ma dodawać, czy odejmować. (ALU + CU = CPU, czyli nasz główny Procesor).
3. Pamięć Główna (RAM)
Główna idea Von Neumanna! 🪤 W pamięci operacyjnej trzymane są JEDNOCZEŚNIE i wpisywane dane (np. tekst do przeliczenia), jak i same instrukcje programu (kod skompilowany do zera i jedynek). Procesor nie widzi różnicy – dla niego wszystko w RAMie to bity.
4. Urządzenia Wejścia (Input)
Klawiatura, mysz, mikrofon. Wprowadzają dane do RAMu.
5. Urządzenia Wyjścia (Output)
Monitor, drukarka, głośniki. Wyrzucają przeliczone dane z RAMu na światło dzienne.
Szyny Danych (Magistrale / Buses)
Elementy te muszą się jakoś komunikować. Używają do tego ścieżek miedzianych zwanych szynami:
- Szyna Danych (Data Bus): Przewozi same pliki i wartości z RAMu do Procesora (jest dwukierunkowa!).
- Szyna Adresowa (Address Bus): Procesor wysyła nią numer przegródki w RAMie, z której chce wyciągnąć informacje. (Jest jednokierunkowa – zawsze to procesor dyktuje adres!). Im szersza szyna (np. 64-bitowa), tym procesor może zaadresować więcej Gigabajtów pamięci.
- Szyna Sterująca (Control Bus): Zegary, przerwania i komendy (np. "Teraz czytaj z dysku").
Cykl Rozkazu (Fetch-Decode-Execute)
Jak program w ogóle działa w procesorze? Zawsze w trzech powtarzających się krokach miliardy razy na sekundę:
- Pobranie (Fetch): Procesor patrzy na licznik rozkazów i pobiera kolejną instrukcję z RAMu.
- Dekodowanie (Decode): Jednostka Sterująca CU dekoduje zera i jedynki i rozumie: "Aha, muszę dodać dwie liczby".
- Wykonanie (Execute): ALU wykonuje dodawanie i wynik (jeśli trzeba) odsyłany jest powrotem z procesora do RAMu.
