Vad är bitvärden?
Varje position i ett binärt tal har ett specifikt värde baserat på 2 upphöjt till positionen. Bit 0 (längst till höger) har värdet 1, bit 1 har värdet 2, bit 2 har värdet 4 och så vidare. När en bit är satt till 1 bidrar den med sitt värde till totalsumman.
Decimalt 13 = binärt 1101. Bit 3 = 1 (värde 8), bit 2 = 1 (värde 4), bit 1 = 0 (värde 0), bit 0 = 1 (värde 1). Summa: 8+4+1 = 13. Kalkylatorn visar varje bits värde och position automatiskt.
Vad är bitmask-operationer?
Bitmask-operationer använder bitvisa operatorer (AND, OR, XOR, NOT) för att manipulera enskilda bitar i ett tal. Det används flitigt i systemprogrammering, nätverksprotokoll, hårdvarukontroll och optimeringskod.
De fyra bitvisa operatorerna
- AND (&): Resultatbiten är 1 bara om BÅDA ingångsbitar är 1 — används för att isolera bitar
- OR (|): Resultatbiten är 1 om MINST EN ingångsbit är 1 — används för att sätta bitar
- XOR (^): Resultatbiten är 1 om bitar SKILJER sig — används för att växla bitar
- NOT (~): Inverterar alla bitar — 0 blir 1, 1 blir 0
Räkneexempel
AND: 1100 & 1010 = 1000 (12 & 10 = 8). OR: 1100 | 1010 = 1110 (12 | 10 = 14). XOR: 1100 ^ 1010 = 0110 (12 ^ 10 = 6). Använd vår talbas-omvandlare för att verifiera binära värden i decimalt och hexadecimalt.
Praktiska användningsområden
Bitmask-operationer används dagligen i modern programmering. Unix-filbehörigheter (rwxrwxrwx) är en bitmask. IPv4-nätmasker (255.255.255.0 = 11111111.11111111.11111111.00000000) använder AND för att isolera nätverksadressen. Färgkanaler i RGBA-värden isoleras med AND och bitskift.
Vill du förstå hur färgkoder lagras som bitvärden? En 32-bitars RGBA-färg lagrar alfa i bits 24–31, röd i bits 16–23, grön i bits 8–15 och blå i bits 0–7. Se vår färgkods-omvandlare för att omvandla färgkoder direkt.
Bit shift — flytta bitar
Bitskift (<<, >>) flyttar alla bitar åt vänster eller höger. Vänstershift med 1 multiplicerar med 2, högershift med 1 dividerar med 2 (heltalsdivision). Det är en extremt snabb operation som ofta används som optimering istället för multiplikation och division.
Räkneexempel
5 << 1 = 10 (5 × 2 = 10). 5 << 2 = 20 (5 × 4 = 20). 20 >> 2 = 5 (20 ÷ 4 = 5). I binärt: 0101 << 1 = 1010. Bitskift används i RGB-kanalisolering: (color >> 16) & 0xFF extraherar röd kanal.
Vill du räkna på ASCII-värden och teckenkodning med bitoperationer? Se vår ASCII/Unicode-omvandlare för att kombinera teckenvärden med bitvärdesberäkningar.