x86 Assembly: Pisz kod, który CPU faktycznie wykonuje
Język asembler to najbliższe podejście do bare metal bez ręcznego pisania kodu binarnego. Każda instrukcja mapuje się bezpośrednio na operację CPU — bez runtime'u, bez garbage collectora, bez abstrakcji ukrywającej co sprzęt robi. Ten track obejmuje x86 Assembly od podstaw aż do programowania na poziomie kernela, dając ci fundament, który sprawia, że wszystko od kompilatorów do reverse engineeringu staje się zrozumiałe.
Czego się nauczysz
Zaczniesz od rejestrów, layoutu pamięci i typów danych, a następnie przejdziesz do podstawowych instrukcji i kontroli przepływu, zarządzania stosem i konwencji wywoływania procedur. Stąd track obejmuje interfejsowanie Assembly z kodem C i C++, wydawanie system calls, obsługę przerwań i wyjątków, oraz pracę z jednostkami zmiennoprzecinkowymi i instrukcjami SIMD. Zaawansowane kursy omawiają debugging i reverse engineering, mechanizmy ochrony pamięci, wirtualizację, programowanie sterowników na poziomie kernela i optymalizację wydajności na niskim poziomie, w tym techniki exploitacji.
Ścieżka nauki
Dwanaście kursów obejmuje poziomy od A2 do C2. Darmowy kurs wprowadzający ustalenia składnię x86 i model myślowy. Kursy B1 i B2 budują praktyczne jądro — rejestry, kontrolę przepływu, stos i procedury. Track następnie przechodzi do głębi C1 z pięcioma kursami obejmującymi C/C++ interop, system calls, przerwania, SIMD i reverse engineering. Dwa kursy C2 na temat Memory Protection and Virtualization oraz Kernel-Level Programming and Drivers poprzedzają ostateczny kurs na temat Performance Optimization and Exploitation, który łączy wszystko od zachowania cache'u do niskopoziomowych technik związanych z bezpieczeństwem.
Jak to działa
Każdy kurs jest podzielony na krótkie, skoncentrowane lekcje, które ukończyć możesz w wbudowanym edytorze kodu z opiniami w czasie rzeczywistym. Tutor AI jest dostępny, gdy utkniesz na kodowaniu instrukcji lub segfault'cie, którego nie potrafisz wyjaśnić.