Hva er en tallbase?

En tallbase, eller radix, er antallet sifre et tallsystem bruker. Desimaltallsystemet, som brukes til daglig, har ti sifre, fra 0 til 9, og hver posisjon har en verdi som er ti ganger så stor som posisjonen til høyre. Datamaskiner bruker binærtallsystemet, som bare har 0 og 1, så hver posisjon har en verdi som er dobbelt så stor som posisjonen til høyre. Oktaltallsystemet, med sifrene 0 til 7, og heksadesimaltallsystemet, med 0 til 9 og A til F for 10 til 15, er korte måter å skrive binærtall på: ett oktalt siffer tilsvarer nøyaktig 3 bits, og ett heksadesimalt siffer tilsvarer nøyaktig 4 bits. Derfor består en byte alltid av to heksadesimale sifre.

Her er det samme tallet i hver base:

Desimal Binær Oktal Heksadesimal
10 1010 12 A
42 101010 52 2A
255 11111111 377 FF
1000 1111101000 1750 3E8
65535 1111111111111111 177777 FFFF
-42 -101010 -52 -2A

Hvor de ulike basene brukes

  • Binær: bits, flagg, bitmasker og nettverksmasker, for eksempel 255.255.255.0, som består av 24 ettall etterfulgt av 8 nuller.
  • Oktal: filtillatelser i Unix, for eksempel chmod 755, der hvert siffer tilsvarer tre tillatelsesbits.
  • Desimal: tall som brukes til daglig.
  • Heksadesimal: farger som #FF6600, byteverdier, minneadresser, MAC-adresser og Unicode-kodepunkter som U+00E9.

Beskrivelse av verktøyet

Dette verktøyet konverterer heltall mellom binær, oktal, desimal og heksadesimal. Alle tallbasekonvertererne her fungerer på samme måte, fra den generelle tallbasekonvertereren til verktøyene for ett enkelt par, som desimal til binær eller heksadesimal til desimal: Verktøyet starter med basene som står i navnet, og menyene for kilde og mål lar deg bytte til en av de fire basene. Skriv inn eller lim inn et tall, så vises resultatet mens du skriver, klart til å kopieres. Hvis tallet inneholder et siffer som ikke finnes i basen, for eksempel 2 i et binært tall, vises en feilmelding. Med bytteknappen snur du konverteringsretningen.

Slik fungerer det

Verktøyet leser tallet som en JavaScript BigInt, et heltall uten størrelsesbegrensning. Dermed konverteres 64-bitsverdier og større tall nøyaktig, uten avrunding: FFFFFFFFFFFFFFFF i heksadesimal er 18446744073709551615 i desimal. Verktøyet godtar:

  • Et minustegn foran tallet, som beholdes i resultatet: -42 i desimal er -101010 i binær.
  • Prefiksene som brukes i kode: 0b for binær, 0o for oktal og 0x for heksadesimal. Dermed konverteres 0x1F til 31.
  • Mellomrom og understreker mellom grupper av sifre, for eksempel 1111 0000 eller 1_000_000.
  • Heksadesimale bokstaver med store eller små bokstaver. Resultatene skrives med store bokstaver.

Bare heltall kan konverteres, så tall med desimaltegn gir en feilmelding.