Czym jest CPU
Część sekcji Podstawy ścieżki Assembly w Coddy. Lekcja 1 z 45.
CPU (Central Processing Unit) to mózg komputera. Ale w przeciwieństwie do ludzkiego mózgu jest w rzeczywistości bardzo prosty. Robi tylko jedną rzecz: odczytuje instrukcje z pamięci i wykonuje je, jedną po drugiej, bardzo szybko. Pisząc kod w Assembly, wydajesz bezpośrednie instrukcje CPU.
W przeciwieństwie do języków wysokiego poziomu, takich jak Python czy JavaScript, które ukrywają szczegóły sprzętowe, język Assembly pozwala dokładnie kontrolować, co robi CPU, krok po kroku.
Wyobraź sobie procesor jako bardzo szybkiego pracownika, który:
- Nie potrafi samodzielnie myśleć ani podejmować decyzji
- Wykonuje proste polecenia, takie jak „dodaj te dwie liczby” lub „przenieś tę wartość tam”
- Wykonuje miliony takich prostych poleceń na sekundę
Wewnątrz procesora znajdują się małe schowki na dane zwane rejestrami. Rejestr przechowuje jedną liczbę. Procesor może uzyskiwać dostęp do rejestrów niezwykle szybko — znacznie szybciej niż do pamięci głównej (RAM).
Procesor ma również specjalny rejestr nazywany licznikiem programu (PC). PC przechowuje adres pamięci następnej instrukcji do wykonania. Po każdej instrukcji PC automatycznie przechodzi do następnego adresu.
Najważniejsze informacje o procesorze CPU:
| Informacja | Wyjaśnienie |
|---|---|
| Wykonuje jedną instrukcję naraz | Brak wielozadaniowości na poziomie sprzętu |
| Rozumie tylko liczby | Wszystko (instrukcje, dane, adresy) jest liczbą |
| Nie ma własnej pamięci (z wyjątkiem rejestrów) | Wszystko musi być przechowywane w pamięci RAM |
| Jest niewiarygodnie szybki | Nowoczesne procesory CPU wykonują miliardy instrukcji na sekundę |
Spróbuj swoich sił
Ta lekcja nie zawiera wyzwania z kodem.
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
1Maszyna
Czym jest CPUPamięćRejestry a pamięćJak działają instrukcjeWzorzec dwóch plikówArchitektura x86-642Systemy liczbowe
Dlaczego system binarny?Liczby binarneZamiana z systemu dziesiętnego na binarnyDlaczego system szesnastkowy?Zamiana z systemu szesnastkowego na dziesiętnyZamiana z systemu dziesiętnego na szesnastkowyASCII i system szesnastkowy5Wywołanie systemowe zakończenia
Czym jest syscall?Wywołanie systemowe zakończenia (60)Kody zakończeniaPodsumowanie: prawidłowe zakończeniePoćwicz samodzielnie: Edytor online Assembly