Binærkalkulator
Utfør binær addisjon, subtraksjon, multiplikasjon og divisjon. Konverter mellom binær og desimal. Gratis matematikkalkulator med umiddelbare resultater.
Det binære tallsystemet: Hvor komputere teller
Det binære tallsystemet (basert på 2) bruker bare to siffer — 0 og 1 — kalt biter (binære siffer). Alle komputere, smartphone og digitale enheter lagrer og behandler alle informasjon i binær, fordi elektriske kredsløp kan pålitelig representere to forskjellige tilstander: høy spenning (1) og lav spenning (0).
Hver posisjon i et binært tall representere en potens av 2, økende fra høyre til venstre:
| Posisjon | 2⁷ | 2⁶ | 2⁵ | 2⁴ | 2³ | 2² | 2¹ | 2⁰ |
|---|---|---|---|---|---|---|---|---|
| Verdi | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
Binær til desimal konvertering: Ganger hver bit med sin posisjonsverdi og summere alle resultater.
Eksempel: 10110101₂ = 1×128 + 0×64 + 1×32 + 1×16 + 0×8 + 1×4 + 0×2 + 1×1 = 128 + 32 + 16 + 4 + 1 = 181
Desimal til binær konvertering: Gjenta å dele med 2, og registrere resten ved hver skritt, så les restene fra bunnen opp.
Eksempel: Konverter 181 til binær:
- 181 ÷ 2 = 90 rest 1
- 90 ÷ 2 = 45 rest 0
- 45 ÷ 2 = 22 rest 1
- 22 ÷ 2 = 11 rest 0
- 11 ÷ 2 = 5 rest 1
- 5 ÷ 2 = 2 rest 1
- 2 ÷ 2 = 1 rest 0
- 1 ÷ 2 = 0 rest 1
Les restene fra bunnen opp: 10110101₂ ✓
Binær aritmetikk: Addisjon, subtraksjon og multiplikasjon
Binær aritmetikk følger samme regler som desimal, men bærer skjer på 2 istedenfor 10.
Binær tilleggsregler: 0+0=0, 0+1=1, 1+0=1, 1+1=10 (bær 1), 1+1+1=11 (bær 1)
Eksempel: 1011₂ + 1101₂ (11 + 13 = 24)
1011 + 1101 ------ 11000
Arbeidet fra høyre til venstre: 1+1=10 (skriv 0, bær 1); 1+0+1=10 (skriv 0, bær 1); 0+1+1=10 (skriv 0, bær 1); 1+1+1=11 (skriv 1, bær 1); slutten bær skriver 1. Resultat: 11000₂ = 24 ✓
To's komplement (binær subtraksjon): Komputere håndterer negative tall og subtraksjon ved hjelp av to's komplementrepresentasjon. For å finne to's komplement av et tall: omvend alle biter, så legg til 1.
Eksempel: −13 i 8-bit to's komplement: +13 = 00001101₂ → omvend alle biter → 11110010₂ → legg til 1 → 11110011₂
Dette tillater subtraksjon å utføres som addisjon: 20 − 13 = 20 + (−13).
Binær multiplikasjon er elegant: hver delprodukt er enten 0 (ganger 0) eller tallet selv (ganger 1), skjøvet til venstre. Eksempel: 1011₂ × 101₂ (11 × 5 = 55):
1011
× 101
-----
1011 (1011 × 1)
0000 (1011 × 0, skjøvet)
1011 (1011 × 1, skjøvet to ganger)
-------
110111₂ = 55 ✓
Binær i datateknologi: Biter, byte og datamengder
Forståelsen av binære enheter er essensiell for noen som jobber med komputere, lagring eller nettverks hastighet:
| Enhet | Størrelse | Maximal verdi (usignert) | Vanlig bruk |
|---|---|---|---|
| Bit | 1 binær siffer | 1 | Boolesk flagg, en binær verdi |
| Nibble | 4 biter | 15 (hex: F) | En hexadecimal siffer |
| Byte | 8 biter | 255 | En enkelt tegn (ASCII), fargekanal |
| Ord | 16 biter | 65 535 | Arkeiske 16-bit systemer, Unicode grunnleggende |
| Double Word (DWORD) | 32 biter | 4 294 967 295 | 32-bit tall, IPv4-adresser |
| Quad Word (QWORD) | 64 biter | 18 446 744 073 709 551 615 | Moderne tall, peker, tidsstempel |
Fargeverdier: Webbfarger bruker 24-bit RGB (8 biter per kanal). #FF5733 = R:255, G:87, B:51. Hver 8-biter kanal kan representere 256 skjær (0–255). Totalt mulige farger: 256³ = 16 777 216 (om lag 16,7 millioner).
Filrettigheter i Unix/Linux: rwxr-xr-- = 111 101 100 i binær = 7, 5, 4 i oktal = chmod 754. Hver gruppe på 3 biter representere lesere (r=4), skrivere (w=2) og utførelse (x=1) rettigheter for eier, gruppe og andre.
Bitvise Operasjoner og Deres Tilpassinger
Bitvise operasjoner manipulerer enkelte biter innenfor heltall. De er grunnleggende for lav-nivå-programmering, kryptografi, nettverksprogrammering og presterende kritisk kode.
| Operasjon | Symbol | Oppførsel | Eksempel |
|---|---|---|---|
| OG | & | 1 hvis BÅDE biter er 1 | 1010 & 1100 = 1000 |
| ELLER | | | 1 hvis EN av biter er 1 | 1010 | 1100 = 1110 |
| XOR | ^ | 1 hvis biter er FØRSTE | 1010 ^ 1100 = 0110 |
| IKKE | ~ | Flip alle biter | ~1010 = 0101 |
| VENSTRE SKIFT | << | Skift biter til venstre (×2 hver skift) | 1011 << 1 = 10110 (×2) |
| HØYRE SKIFT | >> | Skift biter til høyre (÷2 hver skift) | 1011 >> 1 = 0101 (÷2) |
Praktiske anvendelser:
- Bitmaske: Sjekk om en spesifik bit er satt:
if (flags & 0b0100) { ... }— sjekker om bit 2 er 1. - Sette en bit:
flags = flags | 0b0100— setter bit 2 til 1 uavhengig av nåværende verdi. - Åpne en bit:
flags = flags & ~0b0100— åpner bit 2 til 0. - Snørsykkel multiplikasjon/divisjon av potenser av 2:
n << 3= n × 8;n >> 2= n ÷ 4. Bit skift er CPU-nivåoperasjoner, betydelig hurtigere enn multiplikasjon. - Å sjekke om et tall er oddetall:
if (n & 1) { /* odd */ }— den siste biten av noen oddetall er alltid 1.
Nummersystemer sammenligning: Binær, Oktal, Desimal, Hexadecimal
Informasjonsteknologi bruker fire nummersystemer, hver tilpasset forskjellige sammenhenger:
| System | Base | Tall | Vanlig bruk |
|---|---|---|---|
| Binær (base-2) | 2 | 0, 1 | CPU-operasjoner, lagring, logikk |
| Oktal (base-8) | 8 | 0–7 | Unix-filrettigheter, eldre systemer |
| Desimal (base-10) | 10 | 0–9 | Lesbare tall |
| Hexadecimal (base-16) | 16 | 0–9, A–F | Minneadresser, fargekoder, maskinkode |
Snarvei konvertering: binær ↔ hex (4 binære sifre = 1 hex-siffer):
| Binær | Hex | Desimal | Binær | Hex | Desimal |
|---|---|---|---|---|---|
| 0000 | 0 | 0 | 1000 | 8 | 8 |
| 0001 | 1 | 1 | 1001 | 9 | 9 |
| 0010 | 2 | 2 | 1010 | A | 10 |
| 0011 | 3 | 3 | 1011 | B | 11 |
| 0100 | 4 | 4 | 1100 | C | 12 |
| 0101 | 5 | 5 | 1101 | D | 13 |
| 0110 | 6 | 6 | 1110 | E | 14 |
| 0111 | 7 | 7 | 1111 | F | 15 |
Denne 4-biter-gruppering gjør at hex er meget nyttig som en kompaktnotering for binærdatablinger: verdien 32-bit 11001010 00111111 10110101 00001100 er mye lettere å skrive som CA3FB50C.
Binær i nettverk: IP-adresser og undernettnettmasker
Forståelse av binær er essensiell for nettverksingeniører fordi IPv4-adresser er grunnleggende 32-bit binære tall, og undernettsdeling — prosessen med å dele nettverk — avhenger helt av binære operasjoner.
En IPv4-adresse som 192.168.1.100 er lesbar notasjon for den 32-bit binære verdien:
11000000.10101000.00000001.01100100
En undernettnettmaske bestemmer hvilken del av adressen som identifiserer nettverket og hvilken som identifiserer verten. Nettmasken 255.255.255.0 i binær er:
11111111.11111111.11111111.00000000
Det binære OG av IP-adressen og undernettnettmasken gir nettverksadressen:
| Komponent | Desimal | Binær |
|---|---|---|
| IP-Adresse | 192.168.1.100 | 11000000.10101000.00000001.01100100 |
| Undernettnettmaske | 255.255.255.0 | 11111111.11111111.11111111.00000000 |
| Nettverk (OG) | 192.168.1.0 | 11000000.10101000.00000001.00000000 |
CIDR-notasjon (f.eks. /24) forteller deg hvor mange ledende 1-biter er i undernettnettmasken. En /24-maske har 24 enes følgt av 8 nuller, og tillater 2⁸ − 2 = 254 brukbare vertadresseer per undernett. En /16-maske tillater 65 534 vertadresseer. Nettverksingeniører bruker binær mental matematikk daglig for å planlegge undernetter, beregne sendeadresser og løse routing-problemer.
Binary i kryptografi og sikkerhet
Modern kryptografialgoritmer opererer helt på binær nivå, manipulerer individuelle biter gjennom kombinasjoner av XOR, bit-skifter og substitusjonsoperasjoner. Forståelse av binær er porten til å forstå hvordan digitale sikkerhet fungerer.
XOR-kryptering (grunnlaget for moderne ciphers): XOR har en unik egenskap — å gjøre det to ganger med samme nøkkel returnerer den opprinnelige verdien: A ⊕ K ⊕ K = A. Dette gjør XOR til grunnlaget for strøm ciphers og en-gangspad.
Eksempel: kryptering av byte 01001101 (bokstaven 'M' i ASCII) med nøkkel 10110010:
- Plaintext: 01001101
- Nøkkel: 10110010
- XOR (kryptering): 11111111
- XOR igjen med samme nøkkel (dekryptering): 01001101 = 'M' ✓
Nøkkelstørrelser i moderne kryptering: AES-128 bruker en 128-biter nøkkel, noe som betyr det er 2¹²⁸ ≈ 3,4 × 10³⁸ mulige nøkler — mer enn antall atomer i det observerbare universet. AES-256 bruker 256-biter nøkler med 2²⁵⁶ muligheter. Selv de raskeste superdatamaskinene kan ikke bruteforce disse nøkkelrommene. Hver tillegg bit dobles søkeområdet, noe som gjør at nøkkelstørrelse har eksponentiell betydning i kryptografi.
Hash-funksjoner som SHA-256 produserer en 256-biter (32-byte) binær utgang fra noen input. Selv en enkelt bit endring i input produserer en fullstendig forskjellig hash — en egenskap kalt "avalanche-effekten" som gjør at hashes er nyttige for å verifisere dataintegritet, lagre passord og drive blockchain-teknologi.
Binær og kvantekomputere: Mens klassiske datamaskiner bruker binære biter (0 eller 1), bruker kvantekomputere qubits som kan eksistere i en superposisjon av begge tilstander samtidig. En klassisk 256-biter nøkkel har 2²⁵⁶ mulige verdier som må sjekkes sekvensielt; en kvantekomputer som kjører Grover-algoritmen kunne søke dette rommet på √(2²⁵⁶) = 2¹²⁸ operasjoner. Dette er hvorfor post-kvantkryptografi utvikles — for å skape binær-baserte krypteringsalgoritmer som forblir sikre mot kvant-adversarer.
Ofte stilte spørsmål
Hvorfor bruker datamaskiner binær i stedet for desimal?
Elektriske kredsløp er mest pålitelige med bare to forskjellige tilstander: på (høy spenning ≈ 1) og av (lav spenning ≈ 0). Representere 10 forskjellige tilstander for desimal ville kreve mye mer nøyaktig spenningkontroll og ville være langt mer utsatt for elektrisk støy. Binærs enkelhet tillater milliarder av transistorer å fungere pålitelig på GHz-taktfrekvens med milliarder operasjoner per sekund.
Hva er størst tall en byte kan holde på?
En byte (8 bit) kan representere 2⁸ = 256 forskjellige verdier. For usignerte heltall: 0 til 255. For signerte heltall (to's komplement): −128 til 127. Det maksimale usignerte byte-verdien i binær er 11111111₂ = 255; i hex er det FF.
Hvordan konverterer jeg et negativt tall til binær?
Bruk to's komplement: (1) Konverter den positive versjonen til binær, (2) Vri alle bitene (0→1, 1→0), (3) Legg til 1. Eksempel — −13 i 8-bit: +13 = 00001101₂, vri bitene = 11110010₂, legg til 1 = 11110011₂. Dette er hvordan alle moderne datamaskiner lagrer negative heltall.
Hva er forskjellen mellom binær og hexadecimal?
Begge er posisjonelle tallsystemer brukt i datamaskiner. Binær (bas-2) bruker bare 0 og 1 — datamaskinens naturlige språk. Hexadecimal (bas-16) bruker 0–9 og A–F som en kompakttolkning for binær — hver 4 binære siffer svarer til præcis 1 hex-siffer. Hex er brukt for minneadresser, fargekoder (#RRGGBB) og maskinkode fordi det er mer kompaktt og leselig enn rå binær.
Hva brukes bitvise operasjoner til?
Bitvise operasjoner (AND, OR, XOR, NOT, skjær) manipulerer enkelte bit i heltall. Vanlige bruk: bitflag og tillatelser (Unix chmod), sjekke om tall er oddetall (n & 1), hurtig multiplikasjon/divisjon med potenser av 2 (bit-skjær), krypteringsalgoritmer, hash-funksjoner, CRC-feiloppdagelse, nettverkssubnetmasks og spillutvikling (kompakt lagring av tilstand i et enkelt heltall).
Hva er binær flyttkompleks og hvorfor er 0,1 + 0,2 ≠ 0,3 i programmering?
De fleste moderne datamaskiner bruker IEEE 754 binær flyttkompleks, som representerer desimalbrøker i binær. Lignende som 1/3 = 0,3333... kan ikke representeres præcis i desimal, kan 1/10 ikke representeres præcis i binær (det er en uendelig binær brøk). Dette fører til små avrundingsfeil: i de fleste programmeringsspråk er 0,1 + 0,2 = 0,30000000000000004. Bruk heltallsaritmetikk (arbeid i cent, ikke dollar) eller desimalbibliotek for nøkkelhåndtering.
Hvorfor brukes binær i lagring og filstørrelser?
Lagring måles i byte (8 bit), kilobyte (1 024 byte), megabyte (1 024 KB), gigabyte (1 024 MB), osv. Merk: harddiskprodusenter bruker SI-foremål (1 KB = 1 000 byte) mens operativsystemer bruker binære foremål (1 KiB = 1 024 byte), noe som forårsaker det synlige "miste plass" forskjellen når du kjøper lagringsplass. En 1 TB-enhet viser ~931 GiB i Windows fordi 1 000 000 000 000 ÷ 1 073 741 824 ≈ 931.
Hva er binærkodet desimal (BCD)?
BCD koder hver desimaltall som en 4-bit binærgruppe: 0=0000, 1=0001, ..., 9=1001. Så desimal 93 i BCD er 1001 0011. BCD brukes i finansielle systemer (unngår fluktuerende punktfeil), digitale ur og skjermer (7-segment-skjermer dekoderer BCD direkte) og gamle hovedsystemer. Det er mindre plassbesparende enn ren binær, men unngår desimal-till-binar-konverteringsfeil i kritiske applikasjoner.