# Convertitore di basi numeriche

> Convertitore di basi numeriche BIN/HEX/DEC/OCT online e gratuito. Supporta numeri negativi, larghezza 8-64 bit e BigInt per programmatori.

URL: https://acrafto.com/it/convertitore-basi-numeriche/

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

Il mondo dei computer funziona a zeri e uno, ma gli esseri umani pensano in decimi. E i programmatori? Loro devono capire tutto ciò che sta in mezzo. Che tu stia debuggando codice a basso livello, impostando colori in CSS, calcolando maschere IP o risolvendo problemi di informatica, ti imbatterai nella necessità di convertire i numeri tra diverse basi.

Le calcolatrici comuni su Windows o sui dispositivi mobili sono spesso lente e goffe. Il nostro **convertitore intelligente di basi numeriche** è stato progettato dagli sviluppatori per gli sviluppatori. Offre una conversione istantanea in tempo reale, supporto per numeri estremamente grandi e, come uno dei pochi strumenti online, **gestisce correttamente i numeri negativi in formato binario**.

## Cosa può fare questo convertitore di basi numeriche?

Durante lo sviluppo di questo widget, ci siamo concentrati sulla risoluzione dei problemi più comuni per i programmatori:

1. **Reattività in tempo reale:** Nessun pulsante “Calcola”. Inizia a digitare nel campo HEX e vedrai immediatamente come BIN e DEC cambiano.
2. **Supporto per numeri negativi (Signed Integers):** La maggior parte dei convertitori online fallisce quando digiti `-5`. Noi no. Grazie alla selezione della **profondità bit** (8, 16, 32, 64 bit), simuliamo il comportamento preciso del processore utilizzando il cosiddetto complemento a due.
3. **Leggibilità del codice binario:** Guardare `1110101011011110` è faticoso per gli occhi. Il nostro strumento può formattare automaticamente l’output ogni 4 bit (nibble) in `1110 1010 1101 1110`, riducendo drasticamente gli errori durante la trascrizione.
4. **Supporto BigInt:** Hai bisogno di convertire un numero a 64 bit o un hash? JavaScript standard si ferma al numero $2^{53}$. Il nostro motore gestisce numeri di lunghezza arbitraria in modalità “Unsigned”.

---

## Guida ai sistemi numerici: quando usarne uno?

### 1\. Sistema decimale (DEC - Decimal)

- **Base:** 10 (cifre 0-9)
- **Uso:** Vita quotidiana, finanza, conteggio di cicli nel codice.
- **Curiosità:** I computer non lo capiscono, devono convertirlo in binario.

### 2\. Sistema binario (BIN - Binary)

- **Base:** 2 (cifre 0, 1)
- **Uso:** Codice macchina, porte logiche, mascheramento di indirizzi IP.
- **Suggerimento:** Ogni cifra rappresenta un bit. 8 bit formano 1 byte.

### 3\. Sistema esadecimale (HEX - Hexadecimal)

- **Base:** 16 (cifre 0-9, lettere A-F)
- **Uso:** Notazione compatta del codice binario. Un singolo carattere HEX rappresenta esattamente 4 bit (nibble). Due caratteri (es. `FF`) rappresentano un intero byte.
- **Esempi:**
  - Colori sul web: `#FF5733` (Rosso, Verde, Blu).
  - Indirizzi MAC: `00:1A:2B:3C:4D:5E`.
  - Dump di memoria (Memory dumps).

### 4\. Sistema ottale (OCT - Octal)

- **Base:** 8 (cifre 0-7)
- **Uso:** Storicamente computer più vecchi, oggi principalmente **permessi Linux** (chmod).
- **Esempio:** Il comando `chmod 755` imposta i permessi rwx-rx-rx (lettura, scrittura, esecuzione).

---

## Come lavorare correttamente con i numeri negativi?

Questa è la funzione più avanzata del nostro convertitore. Nella memoria del computer non esiste un segno “meno”. Per memorizzare un numero negativo, il computer utilizza più spesso il metodo del **complemento a due (Two’s Complement)**.

Tuttavia, il risultato della conversione di un numero negativo dipende da quanti bit sono stati allocati per la variabile. Per questo motivo, nella barra superiore troverai l’interruttore **Profondità bit**.

### Esempio: Come appare il numero -5?

Prova tu stesso nel nostro convertitore:

1. Imposta la larghezza a **8-bit**.
   - Inserisci in DEC: `-5`.
   - Risultato HEX: `FB`.
   - Risultato BIN: `1111 1011`.
   - *Spiegazione:* $256 - 5 = 251$ (che è FB).
2. Imposta la larghezza a **16-bit**.
   - Inserisci in DEC: `-5`.
   - Risultato HEX: `FFFB`.
   - *Spiegazione:* Dato che abbiamo più spazio, gli “uno” riempiono il resto dello spazio a sinistra.
3. Imposta la larghezza a **Solo positivi (Unsigned)**.
   - Se inserisci `-5`, il campo diventerà rosso. Questa modalità non supporta i numeri negativi, poiché richiederebbe infiniti uno.

> **Suggerimento pro:** Se lavori con colori o indirizzi IP, usa sempre la modalità **“Solo positivi”**. Se stai risolvendo esercizi di C/C++ o assembler, passa a **32-bit** o **64-bit**.

---

## Tabella di conversione rapida (Cheat Sheet)

Per un orientamento rapido, elenchiamo qui i valori di base che ogni “esperto IT” dovrebbe conoscere a memoria.

| Decimale (DEC) | Esadecimale (HEX) | Binario (BIN) | Nota |
| :--- | :--- | :--- | :--- |
| **0** | 00 | 0000 | Zero |
| **1** | 01 | 0001 |  |
| **10** | 0A | 1010 |  |
| **15** | 0F | 1111 | Valore massimo di 4 bit (Nibble) |
| **16** | 10 | 0001 0000 |  |
| **127** | 7F | 0111 1111 | Valore max per signed 8-bit (char) |
| **255** | FF | 1111 1111 | Valore max per unsigned 8-bit (byte) |
| **65 535** | FFFF | … | Valore max per 16-bit |

---

## Domande frequenti (FAQ)

### Cosa significa "Profondità bit" (Bit Depth)?

Determina quanta memoria abbiamo riservato per un numero.

- **8-bit:** Valori da 0 a 255 (o da -128 a 127). Corrisponde al tipo `char` o `byte`.
- **16-bit:** Valori fino a 65 535. Corrisponde al tipo `short`.
- **32-bit:** Standard `int` nei linguaggi moderni.
- **64-bit:** Per numeri molto grandi (`long long`, `BigInt`).

### Perché il numero 255 in HEX si scrive FF?

Il sistema esadecimale ha 16 cifre (0-9 e A-F), dove F ha un valore di 15. Il numero `FF` si calcola come: $(15 \\times 16^1) + (15 \\times 16^0) = 240 + 15 = 255$.

### Come converto un colore HEX in RGB?

Un colore sul web, ad esempio `#E05412`, è composto da tre byte: Rosso (E0), Verde (54), Blu (12). Inserisci nel nostro convertitore "E0" nel campo HEX -> otterrai 224. Inserisci "54" -> otterrai 84. Inserisci "12" -> otterrai 18. Il risultato è `rgb(224, 84, 18)`.

### Cosa significano i prefissi 0x, 0b o 0o?

Per distinguere le basi, i programmatori usano prefissi:

- `0x` = Esadecimale (es. 0xFF)
- `0b` = Binario (es. 0b101)
- `0o` = Ottale (es. 0o755)

Il nostro convertitore riconosce queste notazioni, ma non è obbligatorio scriverle.

### Perché il campo è diventato rosso?

Questa è una funzione di validazione dell'input. Significa che hai inserito un carattere che non appartiene al sistema numerico dato. Ad esempio:

- La lettera "G" in HEX (sono ammesse solo A-F).
- La cifra "2" in BIN (sono ammesse solo 0 e 1).
- La cifra "8" in OCT (sono ammesse solo 0-7).

Correggi l'errore di battitura e il calcolo continuerà.

## Other languages

- Čeština (cs): [Převodník číselných soustav](https://acrafto.com/cs/prevody-ciselnych-soustav/) ([Markdown](https://acrafto.com/cs/prevody-ciselnych-soustav/index.md))
- Slovenčina (sk): [Prevodník číselných sústav](https://acrafto.com/sk/prevodnik-ciselnych-sustav/) ([Markdown](https://acrafto.com/sk/prevodnik-ciselnych-sustav/index.md))
- English (en): [Number System Converter](https://acrafto.com/en/number-system-converter-negative-numbers/) ([Markdown](https://acrafto.com/en/number-system-converter-negative-numbers/index.md))
- Deutsch (de): [Zahlensystem-Konverter](https://acrafto.com/de/zahlensystem-konverter-negative-zahlen/) ([Markdown](https://acrafto.com/de/zahlensystem-konverter-negative-zahlen/index.md))
- Français (fr): [Convertisseur de bases numériques](https://acrafto.com/fr/convertisseur-bases-numeriques/) ([Markdown](https://acrafto.com/fr/convertisseur-bases-numeriques/index.md))
- Español (es): [Conversor de bases numéricas](https://acrafto.com/es/convertidor-sistemas-numericos-numeros-negativos/) ([Markdown](https://acrafto.com/es/convertidor-sistemas-numericos-numeros-negativos/index.md))
- Português (pt): [Conversor de bases numéricas](https://acrafto.com/pt/conversor-sistemas-numericos-negativos/) ([Markdown](https://acrafto.com/pt/conversor-sistemas-numericos-negativos/index.md))
- Nederlands (nl): [Getallenstelsels omrekenen](https://acrafto.com/nl/getallenstelsel-converter/) ([Markdown](https://acrafto.com/nl/getallenstelsel-converter/index.md))
- Polski (pl): [Konwerter systemów liczbowych](https://acrafto.com/pl/konwerter-systemow-liczbowych-z-liczbami-ujemnymi/) ([Markdown](https://acrafto.com/pl/konwerter-systemow-liczbowych-z-liczbami-ujemnymi/index.md))
- Română (ro): [Convertor sisteme de numerație](https://acrafto.com/ro/convertor-sisteme-numerice-numere-negative/) ([Markdown](https://acrafto.com/ro/convertor-sisteme-numerice-numere-negative/index.md))
- Magyar (hu): [Számrendszer átváltó](https://acrafto.com/hu/szamrendszer-atalakito-negativ-szamokkal/) ([Markdown](https://acrafto.com/hu/szamrendszer-atalakito-negativ-szamokkal/index.md))
- Ελληνικά (el): [Μετατροπέας αριθμητικών συστημάτων](https://acrafto.com/el/number-system-converter-negative-numbers/) ([Markdown](https://acrafto.com/el/number-system-converter-negative-numbers/index.md))
- Български (bg): [Конвертор на бройни системи](https://acrafto.com/bg/konvertor-chislovi-sistemi/) ([Markdown](https://acrafto.com/bg/konvertor-chislovi-sistemi/index.md))
- Hrvatski (hr): [Pretvarač brojevnih sustava](https://acrafto.com/hr/konverter-brojevnih-sustava-s-negativnim-brojevima/) ([Markdown](https://acrafto.com/hr/konverter-brojevnih-sustava-s-negativnim-brojevima/index.md))
- Slovenščina (sl): [Pretvorba številskih sistemov](https://acrafto.com/sl/pretvarjalnik-stevilskih-sistemov/) ([Markdown](https://acrafto.com/sl/pretvarjalnik-stevilskih-sistemov/index.md))
- Eesti (et): [Arvusüsteemide teisendaja](https://acrafto.com/et/arvususteemide-muundur/) ([Markdown](https://acrafto.com/et/arvususteemide-muundur/index.md))
- Latviešu (lv): [Skaitļu sistēmu konvertors](https://acrafto.com/lv/skaitlu-sistemu-konvertors/) ([Markdown](https://acrafto.com/lv/skaitlu-sistemu-konvertors/index.md))
- Lietuvių (lt): [Skaičių sistemų keitiklis](https://acrafto.com/lt/skaiciu-sistemu-keitiklis/) ([Markdown](https://acrafto.com/lt/skaiciu-sistemu-keitiklis/index.md))
- Svenska (sv): [Talsystemsomvandlare](https://acrafto.com/sv/talsystem-konverterare-negativa-tal/) ([Markdown](https://acrafto.com/sv/talsystem-konverterare-negativa-tal/index.md))
- Dansk (da): [Talsystem omregner](https://acrafto.com/da/talsystem-omregner/) ([Markdown](https://acrafto.com/da/talsystem-omregner/index.md))
- Suomi (fi): [Lukujärjestelmämuunnin](https://acrafto.com/fi/lukujarjestelma-muunnin/) ([Markdown](https://acrafto.com/fi/lukujarjestelma-muunnin/index.md))
- Norsk (no): [Tallsystemkonverterer](https://acrafto.com/no/tallsystemkonverterer-negative-tall/) ([Markdown](https://acrafto.com/no/tallsystemkonverterer-negative-tall/index.md))
- Українська (uk): [Конвертер систем числення](https://acrafto.com/uk/konverter-chyselnykh-system/) ([Markdown](https://acrafto.com/uk/konverter-chyselnykh-system/index.md))
- Русский (ru): [Конвертер систем счисления](https://acrafto.com/ru/konverter-sistem-schisleniya/) ([Markdown](https://acrafto.com/ru/konverter-sistem-schisleniya/index.md))
- Српски (sr): [Konverter brojevnih sistema](https://acrafto.com/sr/konverter-brojevnih-sistema/) ([Markdown](https://acrafto.com/sr/konverter-brojevnih-sistema/index.md))
- Македонски (mk): [Претворач на бројни системи](https://acrafto.com/mk/pretvornik-brojni-sistemi/) ([Markdown](https://acrafto.com/mk/pretvornik-brojni-sistemi/index.md))
- Bosanski (bs): [Konverter brojevnih sistema](https://acrafto.com/bs/konverter-brojevnih-sistema/) ([Markdown](https://acrafto.com/bs/konverter-brojevnih-sistema/index.md))
- Shqip (sq): [Konvertues sistemesh numerike](https://acrafto.com/sq/konvertues-sistemesh-numerike/) ([Markdown](https://acrafto.com/sq/konvertues-sistemesh-numerike/index.md))
- Türkçe (tr): [Sayı sistemleri dönüştürücü](https://acrafto.com/tr/sayi-sistemleri-donusturucu/) ([Markdown](https://acrafto.com/tr/sayi-sistemleri-donusturucu/index.md))
- 日本語 (ja): [進数変換](https://acrafto.com/ja/number-system-converter/) ([Markdown](https://acrafto.com/ja/number-system-converter/index.md))
- 한국어 (ko): [진법 변환기](https://acrafto.com/ko/number-system-converter/) ([Markdown](https://acrafto.com/ko/number-system-converter/index.md))
- العربية (ar): [تحويل الأنظمة العددية](https://acrafto.com/ar/number-system-converter/) ([Markdown](https://acrafto.com/ar/number-system-converter/index.md))
- हिन्दी (hi): [संख्या प्रणाली कनवर्टर](https://acrafto.com/hi/number-system-converter/) ([Markdown](https://acrafto.com/hi/number-system-converter/index.md))
- Bahasa Indonesia (id): [Konverter sistem bilangan](https://acrafto.com/id/konverter-sistem-bilangan/) ([Markdown](https://acrafto.com/id/konverter-sistem-bilangan/index.md))
- Tiếng Việt (vi): [Chuyển đổi hệ cơ số](https://acrafto.com/vi/chuyen-doi-he-co-so-so-voi-so-am/) ([Markdown](https://acrafto.com/vi/chuyen-doi-he-co-so-so-voi-so-am/index.md))
- ไทย (th): [แปลงเลขฐาน](https://acrafto.com/th/tua-plaeng-rabop-tua-lek/) ([Markdown](https://acrafto.com/th/tua-plaeng-rabop-tua-lek/index.md))
- עברית (he): [המרת בסיסים](https://acrafto.com/he/number-base-converter/) ([Markdown](https://acrafto.com/he/number-base-converter/index.md))
