Bitwise- en shiftinstructies
Beheers bitmanipulatie in x86 met AND, OR, XOR, NOT en de shift- en rotate-instructies die worden gebruikt voor maskering, het schakelen van flags en snelle vermenigvuldiging.
Bitwise- en shiftinstructies is een gratis Assemblytaal en x86-programmeren voor systemen op laag niveau-les op CoddyKit. Dit is les 4 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Assemblytaal en x86-programmeren voor systemen op laag niveau. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Assemblytaal en x86-programmeren voor systemen op laag niveau bevat in totaal 4 lessen.
Waarom bitbewerkingen?
Code op laag niveau manipuleert voortdurend afzonderlijke bits: voor het instellen van flags, het verpakken van velden, maskeren en snelle berekeningen. x86 biedt hiervoor speciale bitsgewijze en verschuivinstructies.
AND voor maskering
AND behoudt alleen de bits die in beide operanden zijn ingesteld; dit is de standaardmanier om ongewenste bits te maskeren.
and eax, 0x0F ; keep low nibbleOR voor het instellen van bits
OR dwingt specifieke bits op 1 te zetten en laat de overige ongewijzigd.
or eax, 0x80 ; set bit 7XOR voor omschakelen
XOR keert bits om op plaatsen waar het masker 1 is. Een bekende idiomatische instructie maakt snel een register nul:
xor eax, eax ; eax = 0NOT voor inversie
NOT keert elke bit om (het ééncomplement).
not eaxLogische verschuiving naar links (SHL)
SHL verschuift bits naar links en vult aan met nullen. Elke verschuiving naar links vermenigvuldigt een ongetekende waarde met twee.
shl eax, 1 ; eax = eax * 2Logische verschuiving naar rechts (SHR)
SHR verschuift naar rechts en vult aan met nullen, waardoor een ongetekende waarde door machten van twee wordt gedeeld.
shr eax, 2 ; unsigned eax / 4Rekenkundige verschuiving (SAR)
SAR verschuift naar rechts maar behoudt de tekenbit, zodat waarden met teken correct worden gedeeld.
sar eax, 1 ; signed eax / 2Rotatie-instructies
ROL en ROR roteren bits: de bit die aan één kant wegvalt, komt aan de andere kant weer binnen. Dit wordt gebruikt bij hashing en cryptografie.
rol eax, 4Instructies voor bittests
BT kopieert een gekozen bit naar CF zodat je die kunt testen, terwijl BTS/BTR de bit testen en instellen of wissen.
bt eax, 3 ; CF = bit 3 of eaxVeelgebruikte idiomen
Handige patronen:
xor reg, regom nul te makenshl/shrvoor berekeningen met machten van tweeand reg, maskom velden te extraheren
Korte controle
Test je begrip van bitbewerkingen.
Samenvatting
Je hebt bitsgewijze en verschuivinstructies geleerd:
- AND maskeert, OR stelt in, XOR schakelt om en NOT keert om
- SHL/SHR voor rekenwerk met ongetekende machten van twee
- SAR behoudt het teken voor deling van waarden met teken
- ROL/ROR roteren; BT test een bit naar CF
Leer Assembly met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 12
- Lessen
- 48
Veelgestelde vragen
Is de les “Bitwise- en shiftinstructies” gratis?
Ja — de volledige tekst van “Bitwise- en shiftinstructies” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Assemblytaal en x86-programmeren voor systemen op laag niveau wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Assemblytaal en x86-programmeren voor systemen op laag niveau bevat in totaal 4 lessen.
Wat leer ik in “Bitwise- en shiftinstructies”?
Beheers bitmanipulatie in x86 met AND, OR, XOR, NOT en de shift- en rotate-instructies die worden gebruikt voor maskering, het schakelen van flags en snelle vermenigvuldiging. Je oefent met Assemblytaal en x86-programmeren voor systemen op laag niveau door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Assemblytaal en x86-programmeren voor systemen op laag niveau te beginnen?
Ervaring vooraf is niet nodig. Assemblytaal en x86-programmeren voor systemen op laag niveau op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 4 van 4.
Hoe lang duurt de les “Bitwise- en shiftinstructies”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Assemblytaal en x86-programmeren voor systemen op laag niveau?
Ja. Elke les over Assemblytaal en x86-programmeren voor systemen op laag niveau bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Instructies voor gegevensverplaatsing (MOV, PUSH, POP)
- Rekenkundige en logische bewerkingen
- Conditionele sprongen en lussen
- Bitwise- en shiftinstructies