Utilia

Pretvarač brojevnih sustava

Pretvaraj brojeve između binarnog, oktalnog, decimalnog, heksadecimalnog i bilo kojeg sustava od baze 2 do 36, s dvojnim komplementom, razlomcima i koracima.

Kako pretvoriti broj u drugi brojevni sustav

  1. Upiši vrijednost u Broj za pretvorbu. Možeš je zalijepiti s prefiksom (0x, 0b, 0o), s razmacima ili podcrtama između skupina znamenki, s predznakom minus i s razlomljenim dijelom iza točke.
  2. Odaberi Ulazna baza. Četiri uobičajene baze imaju nazive; dostupna je svaka baza od 2 do 36.
  3. Odaberi Dodatna izlazna baza ako trebaš i nešto neobično, na primjer bazu 36 za kratke ID-ove ili bazu 3 za zagonetku.
  4. Tablica Rezultati ažurira se dok tipkaš. Označi ili odznači Grupiraj znamenke da se razmaci dodaju na svake 4 binarne ili heksadecimalne znamenke i na svake 3 oktalne ili decimalne. Svaki redak ima vlastiti gumb Kopiraj, koji kopira znamenke bez razmaka.

Cijeli izračun koristi JavaScript BigInt, pa ograničenje veličine nije vrijedno brige: decimalni broj od 200 znamenki pretvara se točno, bez zaokruživanja kakvo daju obični brojevi s pomičnim zarezom.

Kako rade brojevni sustavi

U pozicijskom sustavu svaka se znamenka množi potencijom baze. U decimalnom sustavu 255 znači 2×10² + 5×10¹ + 5×10⁰. U binarnom (baza 2) ista je vrijednost 11111111, u oktalnom (baza 8) 377, a u heksadecimalnom (baza 16) FF. Baze veće od 10 koriste slova: A = 10, B = 11 … Z = 35, zato je 36 najveća baza s uobičajenim skupom znamenki.

Heksadecimalni sustav omiljen je među programerima jer je jedna heksadecimalna znamenka točno četiri bita: FF je 1111 1111. Oktalni sustav grupira bitove po tri, zato se Unixova prava pristupa poput 755 pišu oktalno.

Korak po korak

Odjeljak Korak po korak prikazuje postupak, što je korisno za domaće zadaće i ispite:

  • Baza N → decimalno ispisuje mjesne vrijednosti cjelobrojnog dijela, na primjer 1011₂ = 1×2³ + 1×2¹ + 1×2⁰ = 8 + 2 + 1 = 11.
  • Decimalno → binarno dijeli s 2 uvijek iznova. Ostaci, čitani od zadnjeg prema prvom, jesu binarne znamenke.
  • Za razlomljeni dio alat više puta množi s 2: svaki cjelobrojni dio (0 ili 1) postaje sljedeća binarna znamenka iza točke. Broj 0,625 daje 1,25 → 1, 0,5 → 0, 1,0 → 1, dakle 0,625 = 0,101₂.

Razlomci koji nikad ne završavaju

Neki razlomci nemaju konačan zapis u drugoj bazi. Decimalno 0,1 u binarnom je 0,0001100110011…, što se ponavlja unedogled; zato 0.1 + 0.2 u većini programskih jezika nije točno 0,3. Alat razlomke izračunava točno kao omjere i staje nakon Najviše decimalnih znamenki. Kad mora odrezati rezultat, redak to kaže, pa uvijek znaš je li vrijednost točna.

Dvojni komplement

Računala pohranjuju negativne cijele brojeve u dvojnom komplementu: za n-bitni cijeli broj −x pohranjuje se kao 2ⁿ − x. Tablica Dvojni komplement (cijeli brojevi s predznakom) prikazuje uzorak bitova i heksadecimalnu vrijednost za 8, 16, 32 i 64 bita te kako se isti uzorak čita u stupcima Čitano bez predznaka i Čitano s predznakom. Na primjer, −1 je 11111111 (FF) u 8 bitova, a 200 unesen kao bajt bez predznaka čita se kao −56 kao bajt s predznakom. Kad je vrijednost izvan raspona neke širine (−128 do 255 za 8 bitova), redak kaže Ne stane.

Česta pitanja

Kako unijeti negativan binarni broj?

Upiši znak minus: -1010 u bazi 2 je −10. Ako već imaš uzorak dvojnog komplementa poput 11110110, unesi ga kao pozitivan binarni broj i pročitaj stupac Čitano s predznakom za širinu koju koristiš.

Zašto su slova prikazana velikima?

Velika slova A–F najčešći su stil za heksadecimalni zapis. Unos prihvaća oba oblika; mala i velika slova znače isto.

Mogu li kao decimalni separator koristiti zarez?

Da. Ako broj ne sadrži točku, jedan zarez čita se kao decimalni separator, pa 3,75 radi kao 3.75.

Postoji li ograničenje veličine broja?

Unos prima do 10 000 znakova. Koraci se prikazuju samo za brojeve do 64 znamenke, da stranica ostane čitljiva.

Što radi baza 36?

Koristi znamenke 0–9 i slova A–Z, što daje najkraći zapis alfanumeričkim znakovima. Često se koristi za kompaktne identifikatore i skraćivače poveznica.