MB ou MiB, Mbps ou MB/s: tamanho de arquivos e velocidade

Atualizado:

Um HD novo de 1 TB aparece como 931 GB, uma internet de 100 Mbps baixa a 12 MB/s e o mesmo arquivo tem 4,7 GB num computador e 4,4 GB em outro. Em nenhum desses casos falta alguma coisa. Acontecem duas coisas diferentes: uns contam os tamanhos de 1.000 em 1.000 e outros de 1.024 em 1.024, e as velocidades são medidas em bits, enquanto os arquivos são medidos em bytes. Este guia explica as duas coisas, com as contas feitas.

Um byte são oito bits

Um bit é um único 0 ou 1; um byte é um grupo de oito bits, o suficiente para uma letra de texto simples. Os símbolos só mudam na maiúscula: b é bit e B é byte, então Mb é megabit e MB é megabyte, oito vezes mais. Armazenamento e arquivos são contados em bytes; a velocidade da conexão, em bits por segundo, escrita Mbps, Mb/s ou Mbit/s.

Duas formas de contar: 1.000 ou 1.024

No Sistema Internacional de Unidades, quilo significa 1.000, mega um milhão e giga um bilhão, e o BIPM, que cuida do sistema, diz que esses prefixos indicam estritamente potências de 10: um quilobit são 1.000 bits, não 1.024. Só que a memória dos computadores vem em potências de dois, e por décadas 1.024 bytes foram chamados de quilobyte. Para acabar com a ambiguidade, a IEC aprovou em dezembro de 1998 prefixos binários próprios: kibi (Ki), mebi (Mi), gibi (Gi), tebi (Ti), hoje na norma IEC 80000-13.

DecimalBytesBinárioBytesO binário é maior em
1 kB1.0001 KiB1.0242,4%
1 MB1.000.0001 MiB1.048.5764,9%
1 GB1.000.000.0001 GiB1.073.741.8247,4%
1 TB1.000.000.000.0001 TiB1.099.511.627.77610,0%

A diferença cresce a cada degrau: pequena numa foto, grande num HD. Muitos programas ainda usam os valores binários com os nomes decimais, e é daí que vem a confusão: um “GB” na tela pode querer dizer um ou outro.

Unidades legíveis

Quem conta de que jeito

Fabricantes de HDs, SSDs e cartões de memória, e os provedores de internet, usam unidades decimais: um HD de 1 TB tem 1.000.000.000.000 bytes, e a nota da embalagem da Apple diz “1GB = 1 billion bytes”, um bilhão de bytes. Os aparelhos da Apple também mostram o armazenamento em unidades decimais desde o OS X Snow Leopard e o iOS 11; a página de suporte da Apple informa que o iOS 10 e anteriores e o OS X Leopard e anteriores contavam em binário.

O Explorador de Arquivos do Windows mostra valores binários com nomes decimais: o KB dele vale 1.024 bytes, uma escolha que Raymond Chen, da Microsoft, explicou em 2009 como seguir a prática já existente. No Linux, ls -h, df -h e du -h usam potências de 1.024 com as letras K, M e G, e --si passa para potências de 1.000, como descreve o manual do GNU coreutils. Os chips de memória seguem a JEDEC, a entidade de normas de semicondutores, cujo dicionário define mega para capacidade de memória como 1.048.576; então 8 GB de RAM são 8 GiB.

OndeConta emUm HD de 1 TB aparece como
Embalagem de HDs, velocidade da internetdecimal (1.000)1 TB
macOS e iOS atuaisdecimal (1.000)1 TB
Explorador de Arquivos do Windowsbinário (1.024), com os rótulos KB, MB, GB931 GB
Linux ls -h / df -hbinário (1.024), letras K, M, G932G (931,32 arredondado para cima)
Pentes de memória RAMbinário (1.024)—

Por que um HD novo parece menor

Um HD vendido como 1 TB tem 1.000.000.000.000 bytes. Dividido por 1.073.741.824, os bytes de um gibibyte, dá 931,32, que o Windows mostra como 931 GB. Os bytes estão todos lá; só a unidade mudou. A capacidade formatada é um pouco menor ainda, porque o sistema de arquivos reserva espaço para os próprios registros.

Vendido comoBytesEm unidades binárias
64 GB64.000.000.00059,60 GiB
256 GB256.000.000.000238,42 GiB
512 GB512.000.000.000476,84 GiB
1 TB1.000.000.000.000931,32 GiB
2 TB2.000.000.000.0001.862,65 GiB (1,82 TiB)
4 TB4.000.000.000.0003.725,29 GiB (3,64 TiB)

Velocidade da internet: Mbps contra MB/s

As velocidades de internet e de rede são informadas em bits por segundo, e sempre em unidades decimais: 100 Mbps são 100.000.000 bits por segundo. Para comparar com o contador de download em megabytes por segundo, divida por oito. Programas de download e navegadores costumam mostrar unidades binárias, o que deixa o número um pouco menor ainda.

ConexãoMegabytes por segundo (MB/s)Mebibytes por segundo (MiB/s)
10 Mbps1,251,19
50 Mbps6,255,96
100 Mbps12,511,92
300 Mbps37,535,76
500 Mbps62,559,60
1 Gbps125119,21

Esses são tetos. Cada pacote também carrega endereços e dados de controle: um pacote comum de 1.500 bytes tem pelo menos 20 bytes de cabeçalho IPv4 e 20 de cabeçalho TCP, então no máximo 1.460 bytes, cerca de 97%, são dados do arquivo, e a Ethernet ou o Wi-Fi acrescentam o próprio enquadramento. O sinal do Wi-Fi, um servidor ocupado ou outros aparelhos na linha costumam custar mais do que isso, e por isso uma internet de 100 Mbps raramente baixa a mais de uns 11 a 12 MB/s.

Quanto tempo leva um download

Multiplique o tamanho em bytes por oito para ter os bits e divida pela velocidade em bits por segundo. Um jogo de 4 GB numa internet de 100 Mbps: 4.000.000.000 × 8 ÷ 100.000.000 = 320 segundos, 5 minutos e 20 segundos no melhor caso. 50 GB a 300 Mbps levam 22 minutos e 13 segundos. O upload das conexões residenciais costuma ser bem mais lento que o download, então enviar o mesmo arquivo pode levar várias vezes mais.

Tempo de download

Escrever tamanhos sem ambiguidade

Quando o número exato importa, num contrato, numa especificação ou num chamado de suporte, escreva o prefixo binário quando quiser dizer 1.024: 512 MiB, 16 GiB. Quando escrever MB ou GB, use no sentido decimal, como fazem os fabricantes de armazenamento e as operadoras. Nas velocidades, separe bits e bytes pela letra maiúscula ou minúscula, e escreva Mbit/s ou MB/s por extenso se o leitor puder confundir.

Perguntas frequentes

Um quilobyte são 1.000 ou 1.024 bytes?

Oficialmente 1.000; 1.024 bytes são um kibibyte (KiB). No uso do dia a dia, e no Windows, quilobyte ainda costuma significar 1.024, então confira qual cada programa usa.

Por que minha internet de 100 Mbps baixa a 12 MB/s?

Porque a velocidade está em megabits e o download em megabytes: 100 dividido por 8 dá 12,5 MB/s, e os cabeçalhos dos pacotes e o resto do tráfego levam mais um pouco.

Por que o mesmo arquivo mostra tamanhos diferentes em dois computadores?

Um conta em unidades decimais e o outro em binárias. Um arquivo de 4.700.000.000 bytes tem 4,7 GB num Mac e cerca de 4,4 GB no Windows, que divide por 1.073.741.824.

8 GB de RAM são a mesma coisa que 8 GB de armazenamento?

Não. A memória é contada em binário, então 8 GB de RAM são 8 GiB, 8.589.934.592 bytes; 8 GB de armazenamento são 8.000.000.000 bytes.

O que significam Mbps, Mb/s e Mbit/s?

Os três são megabits por segundo. MB/s, com B maiúsculo, são megabytes por segundo, oito vezes mais.

Referências

  1. BIPM — The International System of Units (SI Brochure, 9th edition), chapter 3: SI prefixes
  2. NIST — Prefixes for binary multiples (IEC, December 1998)
  3. Apple Support — How storage capacity is measured on Apple devices
  4. Raymond Chen, The Old New Thing — Why does Explorer use the term KB instead of KiB? (June 2009)
  5. GNU Coreutils manual — Block size (-h and --si)
  6. JEDEC dictionary — mega (M) as a prefix to units of semiconductor storage capacity
  7. RFC 791 — Internet Protocol (IPv4 header)
  8. RFC 9293 — Transmission Control Protocol (TCP header)
  9. RFC 894 — Transmission of IP datagrams over Ethernet networks (1,500-byte maximum)

Guias relacionados