Czym jest CPU
Część sekcji Podstawy ścieżki Assembly w Coddy. Lekcja 1 z 45.
CPU (Central Processing Unit) to mózg komputera. W przeciwieństwie do ludzkiego mózgu jest jednak bardzo prosty. Robi tylko jedną rzecz: odczytuje instrukcje z pamięci i wykonuje je, jedną po drugiej, bardzo szybko. Pisząc kod Assembly, wydajesz bezpośrednie instrukcje procesorowi CPU.
W przeciwieństwie do języków wysokiego poziomu, takich jak Python czy JavaScript, które ukrywają szczegóły dotyczące sprzętu, asembler pozwala dokładnie kontrolować, co robi procesor, krok po kroku.
Pomyśl o procesorze CPU jak o bardzo szybkim pracowniku, 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ń w każdej sekundzie
Wewnątrz procesora CPU znajdują się małe schowki zwane rejestrami. Rejestr przechowuje jedną liczbę. Procesor CPU 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 zwany 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 CPU:
| Informacja | Wyjaśnienie |
|---|---|
| Wykonuje instrukcje jedna po drugiej | Każda instrukcja uwzględnia wynik poprzedniej. Nowoczesny CPU ma kilka rdzeni, dzięki czemu może uruchamiać kilka programów jednocześnie |
| Rozumie tylko liczby | Wszystko (instrukcje, dane, adresy) jest liczbą |
| Sam przechowuje bardzo mało danych | Rejestry przechowują wartości, na których aktualnie pracuje, a pamięć podręczna przechowuje kopie niedawno używanych danych z RAM. Pozostałe dane programu są przechowywane w RAM |
| Działa niezwykle szybko | Nowoczesne procesory 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