x86-assembler: skriv kod som processorn faktiskt kör
Assembler är det närmaste ni kan komma hårdvaran utan att skriva binärkod för hand. Varje instruktion motsvarar direkt en CPU-operation – ingen runtime, ingen skräpsamlare och inget abstraktionslager som döljer vad hårdvaran gör. Den här kursserien behandlar x86-assembler från grunden till programmering på kärnnivå och ger er den grund som gör allt från kompilatorer till exploitutveckling begripligt.
Det här lär du dig
Ni börjar med register, minneslayout och datatyper och går sedan vidare till grundläggande instruktioner och kontrollflöden, stackhantering och anropskonventioner för procedurer. Därefter behandlar kursserien hur assembler integreras med C- och C++-kod, hur systemanrop görs, hur avbrott och undantag hanteras samt hur flyttalsenheter och SIMD-instruktioner används. De avancerade kurserna tar upp felsökning och reverse engineering, minnesskyddsmekanismer, virtualisering, drivrutinsprogrammering på kärnnivå och lågnivåoptimering av prestanda, inklusive exploateringstekniker.
Utbildningsvägen
Tolv kurser sträcker sig från A2 till C2. Den kostnadsfria introduktionskursen lägger grunden för x86-syntaxen och den mentala modell som behövs. B1- och B2-kurserna bygger upp den praktiska kärnan – register, kontrollflöden, stacken och procedurer. Därefter går kursserien på djupet på C1-nivå med fem kurser om C/C++-interoperabilitet, systemanrop, avbrott, SIMD och reverse engineering. Två C2-kurser om minnesskydd och virtualisering samt programmering och drivrutiner på kärnnivå följs av den avslutande kursen om prestandaoptimering och exploatering. Den knyter samman allt från cachebeteende till lågnivåtekniker med betydelse för säkerheten.
Så fungerar det
Varje kurs är indelad i korta, fokuserade lektioner som ni genomför i den inbyggda kodeditorn med feedback i realtid. En AI-handledare finns tillgänglig när ni kör fast på en instruktionskodning eller ett segfault som ni inte kan förklara.