Ferramentas de unidades·5 min

Como converter bytes, KB, MB, GB, TB (e PB)

Entenda binário vs decimal, converta entre unidades de bytes e evite armadilhas comuns.

Por que existem dois "MB" diferentes?

Compre um disco rígido de 1 TB, conecte e seu sistema operacional reporta 931 GB. O disco está "faltando" 69 GB. Isso não é bug, golpe ou erro de formatação. É a confusão binário vs decimal embutida em como nomeamos armazenamento.

A questão central: você multiplica por 1.000 (decimal, o padrão SI) ou por 1.024 (binário, o que os computadores realmente fazem internamente)?

  • 1 KB = 1.000 bytes (decimal, o que os fabricantes de disco usam, o que o SI dita)
  • 1 KiB = 1.024 bytes (binário, o que o Windows costumava chamar de "KB", em que a RAM é medida)

Para remover a ambiguidade, a IEC introduziu novos prefixos binários em 1998: KiB (kibibyte, 2^10), MiB (mebibyte, 2^20), GiB (gibibyte, 2^30), TiB (tebibyte, 2^40), PiB (pebibyte, 2^50). Na prática, os rótulos antigos persistem em todos os lugares exceto em documentação técnica, e a maioria dos sistemas operacionais é inconsistente: macOS usa decimal para armazenamento, Windows usa uma mistura, distribuições Linux variam.

Este guia explica a matemática, as convenções e três formas confiáveis de converter.

As fórmulas exatas

Decimal (SI, usado por fabricantes de discos, velocidades de rede)

``` 1 KB = 1.000 B = 10^3 B 1 MB = 1.000 KB = 1.000.000 B = 10^6 B 1 GB = 1.000 MB = 1.000.000.000 B = 10^9 B 1 TB = 1.000 GB = 1.000.000.000.000 B = 10^12 B 1 PB = 1.000 TB = 10^15 B ```

Binário (IEC, usado por RAM, formatos de arquivo, alguns SOs)

``` 1 KiB = 1.024 B = 2^10 B 1 MiB = 1.024 KiB = 1.048.576 B = 2^20 B 1 GiB = 1.024 MiB = 1.073.741.824 B = 2^30 B 1 TiB = 1.024 GiB = 1.099.511.627.776 B = 2^40 B 1 PiB = 1.024 TiB = 2^50 B ```

A razão entre decimal e binário cresce rapidamente: um disco "1 TB" de marketing é 1.000.000.000.000 bytes, mas seu SO pode mostrar 931 GiB de espaço utilizável após formatação e overhead. A lacuna se amplia com o tamanho — um disco "1 PB" é aproximadamente 0,89 PiB.

Tabela de referência rápida

| Bytes | Decimal (SI) | Binário (IEC) | |---------:|----------------------|--------------------------| | 1.000 | 1 KB | 0,977 KiB | | 1.024 | 1,024 KB | 1 KiB | | 1.000.000| 1 MB | 0,954 MiB | | 1.048.576| 1,049 MB | 1 MiB | | 10^9 | 1 GB | 0,931 GiB | | 2^30 | 1,074 GB | 1 GiB | | 10^12 | 1 TB | 0,909 TiB | | 2^40 | 1,100 TB | 1 TiB | | 10^15 | 1 PB | 0,888 PiB |

Método 1: Use o conversor de armazenamento de dados do UtilBoxx (Recomendado)

A maneira mais rápida e segura de converter entre B, KB, MB, GB, TB e PB é o Conversor de Armazenamento do UtilBoxx. Suporta tanto o modo decimal quanto o binário, permite escolher a precisão e roda inteiramente no seu navegador: sem upload, sem cadastro, sem registro dos seus arquivos.

Como usar:

  1. Acesse utilboxx.com/pt/tools/unit/data
  2. Digite um valor em qualquer campo (B, KB, MB, GB, TB ou PB)
  3. Escolha o modo decimal (SI) ou binário (IEC)
  4. Todos os outros campos se atualizam instantaneamente
  5. Copie o resultado

Por que recomendamos este método:

  • 100% grátis, sem cadastro, sem e-mail, sem anúncios
  • Privacidade em primeiro lugar: nada sai do seu navegador
  • Modos decimal e binário com um único alternador
  • Conversão bidirecional entre as seis unidades
  • Alta precisão — sem surpresas de arredondamento de ponto flutuante
  • Funciona em qualquer dispositivo com navegador

Se você cita tamanhos de arquivo, capacidades de disco ou quantidades de RAM com frequência, esta ferramenta vai evitar que você cometa o mesmo erro de 1024 vs 1000 repetidamente.

Método 2: macOS Finder (e outros gerenciadores de arquivos do SO)

Se você só precisa saber a contagem exata de bytes de um arquivo específico, o gerenciador de arquivos do seu sistema operacional dá a resposta decimal com precisão total.

No macOS Finder:

  1. Clique com o botão direito em qualquer arquivo e escolha Obter informações (ou pressione Cmd+I)
  2. O tamanho é mostrado em unidades decimais: KB, MB, GB
  3. Clique no campo de tamanho para alternar entre bytes, KB, MB e GB
  4. A contagem exata de bytes está entre parênteses

No Windows Explorador de Arquivos:

  1. Clique com o botão direito em um arquivo e escolha Propriedades
  2. O tamanho é mostrado em KB, MB ou GB (Windows usa uma mistura de binário e decimal dependendo da versão)
  3. Para bytes exatos, divida KB por 1.024 apenas se o Windows reporta KB binário; Windows 10/11 moderno na verdade reporta em binário para alguns diálogos e decimal para outros

No Linux:

  1. `ls -l file` mostra os bytes exatos
  2. `ls -lh file` mostra o tamanho legível por humanos (a maioria das distros usa binário por padrão; algumas usam decimal — cheque seu `alias ls`)

Este método é ótimo quando você quer saber o tamanho de um arquivo ou pasta específico, mas não ajuda com conversão em lote ou matemática entre unidades.

Método 3: Python (ou qualquer linguagem)

Para conversão programática, poucas linhas de Python cobrem todas as seis unidades. O método `bit_length()` dá o número de bits necessários para representar um inteiro — útil ao dimensionar buffers.

```python # Conversão decimal (SI) def to_bytes(value, unit): units = {"B": 1, "KB": 1e3, "MB": 1e6, "GB": 1e9, "TB": 1e12, "PB": 1e15} return value * units[unit]

# Conversão binária (IEC) def to_bytes_binary(value, unit): units = {"B": 1, "KiB": 210, "MiB": 220, "GiB": 230, "TiB": 240, "PiB": 2*50} return value units[unit]

# bit_length de um inteiro n = 123456789 print(n.bit_length()) # 27 bits ```

Para one-liners no REPL do Python:

```python # Converter 1 GiB para bytes 1024 1024 1024 # 1073741824

# Converter 1 TB para GiB 1_000_000_000_000 / (2**30) # 931.3225746154785

# Converter 5 PB para TiB 5 1e15 / (2*40) # 4547.473508864641 ```

Em JavaScript, a mesma ideia:

```js const GiB = 1024 ** 3; const TB_in_bytes = 1e12; console.log((TB_in_bytes / GiB).toFixed(3)); // 931.323 ```

Método 4: CLI no macOS/Linux

A maioria dos shells tem matemática embutida, e o macOS vem com uma calculadora que lida com números grandes:

```bash # No bash, usando awk awk 'BEGIN { printf "1 TB in GiB = %.3f\n", 1e12 / (2^30) }' # 1 TB in GiB = 931.323

awk 'BEGIN { printf "1 GiB in bytes = %d\n", 2^30 }' # 1 GiB in bytes = 1073741824

# Apenas macOS: use units units "1 TB" "GiB" # 931.32257

# Apenas Linux: numfmt é parte do coreutils numfmt --to=iec --suffix=B 1000000000000 # 931G numfmt --to=si --suffix=B 1073741824 # 1.1G ```

A ferramenta `numfmt` é particularmente útil em scripts shell: aceita números com unidades opcionais e os reformata, suporta ambos os modos decimal (--si) e binário (--iec), e lida com números negativos corretamente.

Perguntas frequentes

Por que meu disco "1 TB" mostra 931 GB?

Fabricantes de disco usam decimal: 1 TB = 1.000.000.000.000 bytes. Sistemas operacionais frequentemente mostram isso em binário, que chamam de GB mas na verdade significa GiB. 1.000.000.000.000 bytes ÷ 1.073.741.824 bytes por GiB = 931,32 GiB. O espaço "ausente" é a diferença entre decimal e binário, mais overhead de formatação, tabelas de partição e metadados do sistema de arquivos.

MB é maior que MiB?

Sim. MB é decimal (1.000.000 bytes) e MiB é binário (1.048.576 bytes). MiB é aproximadamente 4,86% maior que MB. O mesmo se aplica a KB vs KiB, GB vs GiB, TB vs TiB.

A RAM usa binário ou decimal?

A RAM é vendida e endereçada em binário. Um pente de memória "16 GB" é 16 GiB (17.179.869.184 bytes) e o SO reporta assim. O "GB" de marketing é tecnicamente incorreto pelos padrões SI, mas a convenção é tão enraizada que ninguém tentou renomear a memória como "GiB".

E as velocidades de rede?

Equipamentos de rede historicamente usaram decimal para bits por segundo (1 Mbps = 1.000.000 bits por segundo). Muitos ISPs também anunciam em decimal mas cotam velocidades misturando bytes por segundo com bits, levando à clássica confusão de "pago 100 Mbps mas só recebo 12 MB/s". Divida por 8 (bits para bytes) e considere o overhead, e 100 Mbps se torna aproximadamente 11-12 MB/s. A matemática bate; as unidades confundem.

O que é maior, KB ou KiB?

Um KiB é maior. 1 KiB = 1.024 B, enquanto 1 KB = 1.000 B. O KiB (kibibyte) é 2,4% maior que o KB (kilobyte). O mesmo padrão se mantém: MiB > MB, GiB > GB, TiB > TB, PiB > PB.

Por que a indústria não padronizou em um?

Nos padrões, sim. A IEC usa oficialmente prefixos binários (KiB, MiB, GiB) desde 1998 e o padrão SI diz explicitamente que "kilo" significa 1.000. Mas os prefixos binários não deslocaram os rótulos antigos no uso diário. A Apple usa decimal consistente para GB e TB. A Microsoft usa binário para RAM mas decimal para armazenamento. As ferramentas Linux estão divididas. O resultado é ambiguidade permanente, e a única solução é saber com qual convenção você está lidando em qualquer contexto.

Conclusão

Bytes, kilobytes, megabytes, gigabytes, terabytes e petabytes não são intercambiáveis, e a lacuna decimal-vs-binário cresce a cada degrau na escada. As fórmulas são simples — divida por 1.000 para decimal, por 1.024 para binário — mas lembrar qual usar é a parte difícil.

Para uma resposta rápida, o Conversor de Armazenamento do UtilBoxx faz a matemática em qualquer modo com um clique. Para o tamanho de um arquivo específico, o gerenciador de arquivos do seu SO dá a contagem exata de bytes. Para trabalho em lote ou com scripts, a aritmética do Python ou a CLI `numfmt` são imbatíveis. E em caso de dúvida, procure o "i" final: KiB, MiB, GiB, TiB, PiB sempre significam binário.