Bitvisa operatorer
AND, OR, XOR, NOT och skiftningar
Bitvisa operatorer är en gratis lektion i Zig Academy på CoddyKit. Detta är lektion 3 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Zig Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Zig Academy innehåller totalt 4 lektioner.
Ner på bitnivå
Varje heltal är egentligen en rad av bitar. Bitvisa operatorer låter dig arbeta direkt med de enskilda ettorna och nollorna, utan avrundning eller mellanliggande matematik.
Bitvis AND
&-operatorn behåller en bit endast där båda indata har värdet 1. Det är det klassiska verktyget för att maskera bort de bitar du inte vill ha.
const masked = value & 0x0F;Bitvis OR
|-operatorn sätter en bit där någon av indata har värdet 1. Använd den för att slå på specifika flaggor utan att påverka resten.
const withFlag = value | 0b0010;Bitvis XOR
^-operatorn sätter en bit endast där indata skiljer sig åt. XOR är praktiskt för att växla en flagga eller jämföra två mönster.
const toggled = value ^ 0b0001;Bitvis NOT
Den unära ~-operatorn inverterar alla bitar på en gång: varje 1 blir 0 och varje 0 blir 1. Den skapar komplementet till ett värde.
const inverted = ~flags;Vänsterskift
<<-operatorn flyttar bitar mot den högre änden och fyller på med nollor. Varje vänsterskift med ett steg fördubblar ett unsigned-värde.
const doubled = x << 1;Högerskift
>>-operatorn flyttar bitar mot den lägre änden. För ett unsigned-heltal halverar varje högerskift med ett steg värdet.
const halved = x >> 1;Maskning läser bitar
Kombinera AND med en mask för att testa om en bit är satt. Om value & mask är skilt från noll är flaggan aktiverad; om värdet är noll är den avstängd.
const isSet = (value & mask) != 0;Sätta och rensa
Använd OR med en mask för att sätta bitar och AND med en inverterad mask för att rensa dem. Tillsammans ger de dig exakt kontroll över varje flagga.
const cleared = value & ~mask;Skiftmängder kontrolleras
Zig låter dig inte skifta mer än vad typen rymmer. En skiftmängd utanför intervallet är ett definierat fel, inte tyst skräpdata.
Varför bitar spelar roll
Bitoperationer används för flaggor, behörigheter, hårdvaruregister och kompakta data. De låter dig lagra många true-or-false-svar i ett enda tal.
Snabb kontroll
Du vill att en bit ska vara satt endast när de två indata skiljer sig åt. Vilken operator?
Sammanfattning: bitarnas mästare
Nu använder du &, |, ^, ~ samt skiftena << och >> för att läsa, sätta, rensa och flytta bitar med full precision. ⚙️
Lär dig Zig med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 30
- Lektioner
- 120
Vanliga frågor
Är lektionen ”Bitvisa operatorer” gratis?
Ja – hela texten till ”Bitvisa operatorer” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Zig Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i Zig Academy innehåller totalt 4 lektioner.
Vad lär jag mig i ”Bitvisa operatorer”?
AND, OR, XOR, NOT och skiftningar Ni övar på Zig Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig Zig Academy?
Du behöver inga förkunskaper. Utbildningen i Zig Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.
Hur lång tid tar lektionen ”Bitvisa operatorer”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här Zig Academy-lektionen?
Ja. Varje Zig Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Aritmetiska operatorer och jämförelseoperatorer
- Överspill: + jämfört med +% och +|
- Bitvisa operatorer
- Boolesk logik och kortslutningsutvärdering