BUDOWA KOMPUTERA – INFORMATYKA

Od logiki bitów do współczesnych procesorów

(czyli jak komputer naprawdę działa)


1. Wstęp: po co to wiedzieć

Kiedy piszesz program w Pythonie lub C++, raczej nie myślisz:

„a gdzie to się właściwie wykonuje w procesorze?”

Tymczasem komputer, który uruchamia Twój kod, ma bardzo konkretną, logiczną strukturę.
Zrozumienie jej pozwala Ci zrozumieć:

  • dlaczego program czasem działa wolno,
  • jak system operacyjny zarządza pamięcią,
  • co naprawdę znaczy „optymalizacja”,
  • jak działa pamięć, procesor, dysk i co je ogranicza.

To właśnie ta wiedza odróżnia kogoś, kto pisze kod, od kogoś, kto rozumie, jak kod pracuje.


2. Architektura von Neumanna – podstawa wszystkiego

W 1945 roku John von Neumann opisał koncepcję komputera, która stała się podstawą wszystkich współczesnych urządzeń – od smartfonów po superkomputery.

Cztery główne komponenty:

┌─────────────┐
│   PAMIĘĆ    │  ← przechowuje dane i program
└──────┬──────┘
       │
   ┌───┴───────────────┬──────────────┐
   │                   │              │
┌──▼──┐        ┌──────▼────┐    ┌────▼───────┐
│ CPU │◄──────►│ ALU & CU  │    │  REG. I/O  │
└─────┘        └───────────┘    └────────────┘
   ↑               ↑                   ↑
Wykonuje    Operacje logiczne     Wejście/Wyjście
instrukcje   i arytmetyczne       (urządzenia peryf.)

Jak to działa:

  • Pamięć – przechowuje zarówno dane, jak i program.
  • CPU (Central Processing Unit) – odczytuje i wykonuje instrukcje z pamięci.
  • ALU (Arithmetic Logic Unit) – wykonuje działania matematyczne i logiczne (+, −, ×, ÷, AND, OR, NOT).
  • CU (Control Unit) – steruje przepływem danych.
  • I/O (Input/Output) – umożliwia komunikację z otoczeniem: dyskiem, klawiaturą, monitorem itp.

Przykład:
Kiedy piszesz x = 5 + 3, procesor:

  1. pobiera instrukcję z pamięci,
  2. ALU wykonuje dodawanie,
  3. wynik (8) zapisuje z powrotem w pamięci.

3. Systemy liczbowe – język komputera

Komputer przechowuje wszystkie dane w systemie binarnym – za pomocą zer i jedynek.
Każdy bit to najmniejsza jednostka informacji:
0 = brak impulsu, 1 = impuls elektryczny.

👉 Pełne omówienie systemów liczbowych znajdziesz w artykule „Systemy liczbowe – język komputera”.
Tutaj skupimy się nie na przeliczaniu liczb, ale na tym, jak CPU tę reprezentację wykorzystuje.


3.1 Bit, bajt i jednostki pochodne

JednostkaWartośćPrzykład
1 bit0 lub 1jeden stan logiczny
1 bajt8 bitównp. litera ‘A’ = 01000001
1 kilobajt (KB)1024 bajtykrótki dokument tekstowy
1 megabajt (MB)1024 KBzdjęcie z telefonu
1 gigabajt (GB)1024 MBfilm HD
1 terabajt (TB)1024 GBdysk twardy komputera

Ważne: 1 bajt = 8 bitów – to podstawowa jednostka pamięci i transferu danych.
Komputer mierzy nimi wszystko: od znaków tekstu po pliki wideo.


4. Reprezentacja danych w komputerze

Wszystkie dane — liczby, teksty, obrazy — zapisane są w formie binarnej.
Ale sposób ich interpretacji zależy od kontekstu.


4.1 Liczby całkowite (integers)

Jak komputer zapisuje liczbę ujemną, np. -5?

Metoda: uzupełnienie do dwóch (Two’s Complement)
Standard w architekturach procesorów.

Dla 8 bitów:

+5 = 00000101  
-5 = 11111011  (odwrócenie bitów i dodanie 1)
x = 5
print(bin(x))   # 0b101
print(bin(-5))  # -0b101 (w pamięci: 11111011)

Zakres liczb 8-bitowych:

  • bez znaku: 0 – 255
  • ze znakiem: -128 – 127

4.2 Liczby zmiennoprzecinkowe (IEEE 754)

Służą do zapisu ułamków i liczb bardzo dużych lub małych.

Standard IEEE 754 zapisuje liczbę w postaci: (−1)s×1.m×2e(-1)^s × 1.m × 2^e(−1)s×1.m×2e

Dla 32-bitów:

  • 1 bit → znak,
  • 8 bitów → wykładnik,
  • 23 bity → mantysa.

Przykład: liczba 3.14159

Krok 1: 11.001001...  
Krok 2: 1.1001001 × 2^1  
Krok 3: s=0, e=1+127, m=1001001...
x = 0.1 + 0.2
print(x)  # 0.30000000000000004 — błąd zaokrąglenia

Dlatego przy obliczeniach zmiennoprzecinkowych należy uważać na dokładność.


4.3 Tekst i kodowanie (ASCII i Unicode)

Każdy znak w pamięci to liczba:

ZnakASCII (DEC)Binarnie
’A’6501000001
’a’9701100001
’0′4800110000
’ ’3200100000

Unicode rozszerza ten system na cały świat — zawiera polskie litery, emotikony i tysiące symboli.

ord('A')   # 65
chr(65)    # 'A'
ord('ą')   # 261
ord('😀')  # 128512

5. Hierarchia pamięci – złoty trójkąt

Każdy rodzaj pamięci różni się szybkością, pojemnością i kosztem.
Im szybsza pamięć, tym droższa i mniejsza.

5.1 Struktura hierarchii

Rejestry CPU (64 bajty)       — nanosekundy (ns)
Cache L1 (32 KB)              — ~4 ns
Cache L2 (256 KB)             — ~10 ns
Cache L3 (8 MB)               — ~40 ns
RAM (8–32 GB)                 — ~100 ns
SSD (500 GB–1 TB)             — ~10 000 ns
HDD (2–8 TB)                  — ~10 000 000 ns

Porównanie czasu dostępu:

Jeśli dostęp do rejestru trwa 1 sekundę,
to dostęp do dysku HDD trwałby… 116 dni!


5.2 Rejestry CPU

Najmniejsza, ale najszybsza pamięć – CPU ma tylko kilkadziesiąt rejestrów.

a = 5
b = 3
c = a + b  # wykonane bezpośrednio w rejestrach CPU

5.3 Cache L1, L2, L3

To pamięć pośrednia między CPU a RAM.
Przechowuje dane, do których procesor często sięga.

Rdzeń 1 ─→ L1 ─┐
Rdzeń 2 ─→ L1 ─┼─→ L3 (wspólny)
Rdzeń 3 ─→ L1 ─┤
Rdzeń 4 ─→ L1 ─┘
  • L1 – najszybsza, ale bardzo mała
  • L2 – większa, wolniejsza
  • L3 – wspólna dla wszystkich rdzeni

5.4 RAM (Random Access Memory)

To główna pamięć, w której działają aktualne programy.

Cechy:

  • szybka w porównaniu z dyskiem,
  • ulotna (dane znikają po wyłączeniu),
  • pojemność: 8–64 GB (w zależności od komputera).
lista = [1, 2, 3, 4, 5]  # dane w RAM

5.5 SSD (Solid State Drive)

Pamięć masowa bez ruchomych części.
Działa znacznie szybciej niż tradycyjny dysk.

  • prędkość: 400–550 MB/s
  • trwała, cicha, energooszczędna
  • pojemność: 256 GB – 4 TB

5.6 HDD (Hard Disk Drive)

Tradycyjny dysk z obracającymi się talerzami.

  • wolniejszy (60–160 MB/s)
  • bardzo pojemny (2–8 TB)
  • wrażliwy na wstrząsy
  • głośny i bardziej prądożerny

6. Procesor (CPU) – mózg komputera


6.1 Budowa procesora

┌──────────────────────────┐
│ Jednostka Sterująca (CU) │
│ - czyta instrukcje       │
│ - dekoduje rozkazy       │
│ - kieruje operacjami     │
└─────────┬────────────────┘
          │
          ▼
┌──────────────────────────┐
│ Jednostka Arytmetyczno-  │
│ Logiczna (ALU)           │
│ - +, -, *, /, AND, OR    │
│ - porównania             │
└──────────────────────────┘

6.2 Takt procesora (Clock Speed)

Procesor pracuje w rytmie impulsów zegara.
Każdy impuls = 1 cykl, czyli 1 krok wykonania instrukcji.

1 GHz = 1 miliard cykli na sekundę

ProcesorTaktowanieSzacowana wydajność
Stary Pentium800 MHz0.8 mld operacji/s
Nowoczesny i73.5 GHz3.5 mld operacji/s

Ale częstotliwość to nie wszystko – liczy się także liczba rdzeni, wątków i architektura.


6.3 Rdzenie i wątki (Cores & Threads)

Nowoczesne procesory mają wiele rdzeni.
Każdy rdzeń może wykonywać oddzielne zadanie.
Dodatkowo każdy rdzeń potrafi symulować dwa „wątki” – dzięki technologii Hyper-Threading.

ProcesorRdzenieWątkiPrzykład zastosowania
i324przeglądanie internetu
i548gry, edycja wideo
i7 / Ryzen 7816montaż filmów, programowanie
i9 / Ryzen 912–1624–32obliczenia naukowe

6.4 Wydajność a energooszczędność

Każdy wzrost taktowania oznacza większe zużycie energii i temperaturę.
Dlatego procesory korzystają z dynamicznego zarządzania energią (Turbo Boost, Precision Boost),
które zwiększa moc tylko wtedy, gdy to potrzebne.


6.5 Nowoczesne procesory

Dzisiejsze CPU to hybrydy zbudowane z:

  • rdzeni wydajnych (P-Cores) – do zadań wymagających mocy,
  • rdzeni efektywnych (E-Cores) – do lekkich zadań i oszczędzania energii,
  • zintegrowanych układów graficznych (iGPU),
  • akceleratorów AI w najnowszych generacjach.

7. Podsumowanie

Zrozumienie, jak komputer przechowuje i przetwarza dane,
to fundament świadomego programowania.

  • Programista „systemowy” rozumie, jak dane przepływają przez hierarchię pamięci.
  • Programista „aplikacyjny” dzięki temu wie, jak pisać kod wydajnie.
  • A każdy użytkownik może wreszcie pojąć, dlaczego „więcej GHz” nie zawsze znaczy „szybciej”.

💡 Zapamiętaj:

Komputer to nie magia, tylko logika — od bitów w pamięci po miliardy operacji w procesorze.
Kiedy to zrozumiesz, kodowanie przestaje być tajemnicą, a staje się sztuką sterowania myślą maszyny.