Cookies para estatística e publicidade
Usamos cookies de estatística e de publicidade, ambos enviados ao Google. Recusar não muda nada do que você vê.Ler a página de privacidade
1 KiB = 1024 B
Digite um valor e a conversão de kibibyte para byte se atualiza enquanto você escreve. O fator exibido é 1024: é isso que corresponde em B a 1 KiB. O cálculo é feito no seu próprio aparelho, e o valor digitado não é enviado para um servidor.
512 KiB is 524300 B
— meio mebibyte.
4 KiB is 4096 B
— uma página de memória em quase todos os sistemas.
4883 KiB is 5000000 B
— uma foto feita com o celular.
1 KiB is 1024 B
— um kibibyte, que é onde a confusão começa.
| KiB | B |
|---|---|
| 1 | 1024 |
| 2 | 2048 |
| 5 | 5120 |
| 10 | 10240 |
| 50 | 51200 |
| 100 | 102400 |
| 500 | 512000 |
| 1000 | 1024000 |
Converter KiB para B
Um kibibyte são exatamente 1.024 bytes. O nome foi introduzido em 1998 para que «kilobyte» pudesse voltar a significar 1.000, embora o costume nunca tenha pegado de vez.
Um byte são oito bits, o que nem sempre foi claro: os primeiros computadores usaram seis, sete ou nove. O oito se impôs porque nele cabe um caractere e porque o número se parte em metades limpas.
Neste sentido a conta é uma multiplicação, e por um número inteiro: um kibibyte são 1.024 bytes, exatamente, e 1.024 é a definição, não uma medição que chegou perto.
Isso faz dela uma das poucas conversões que valem de cabeça, e o resultado dá para conferir: divida de volta e você tem que cair no número de partida, exato e sem resto para explicar.
Um KiB são 1.024 da unidade de baixo; um kB, 1.000. Nesta página isso é a diferença entre 1024 B e 1000 B — 2,4 % — e a distância cresce a cada degrau: por isso é arredondamento desprezível numa foto e um pedaço visível de um HD.
O mistério do espaço que some é inteiro isso. Um disco vendido como um terabyte tem exatamente o que diz em unidades decimais; o Windows reconta em unidades binárias e mantém o nome decimal, então o número encolhe sem que nada tenha se perdido. O macOS conta em unidades decimais desde o 10.6, e é por isso que o mesmo disco pode aparecer com dois tamanhos em dois computadores.
A aritmética é a parte menor: multiplique por 1.024 e a contagem de byte é exata. O que torna a conversão digna de uma página é que a figura de origem chega sob meia dúzia de rótulos diferentes. Interfaces de kernel imprimem kB e significam kibibyte. Ferramentas invocadas com uma opção k reportam em kibibyte e não dizem nada. Documentação escrita depois de 1998 diz KiB e significa isso. Os três descrevem a mesma unidade de 1.024 bytes.
Isso deixa o leitor fazendo um passo de identificação antes da multiplicação. O teste confiável é a ferramenta, não o rótulo: qualquer coisa reportando uso de memória ou bloco num sistema tipo Unix está contando em unidades de 1.024 a menos que tenha sido explicitamente pedida em unidades SI. Qualquer coisa citando um tamanho de arquivo para um humano é mais provável que signifique mil.
A contagem de bloco armazenada de um arquivo é expressa em unidades de 512 bytes, e é assim desde que a interface foi definida, independente do que o sistema de arquivos por baixo realmente aloca. Um arquivo ocupando um bloco de 4.096 bytes, portanto, reporta oito blocos. O mesmo arquivo por outro comando reporta 4, porque essa ferramenta conta em kibibyte. Nenhuma das duas figuras está errada e nenhuma pode ser comparada à outra sem saber qual bloco cada uma significa.
A regra prática é converter tudo para byte antes de comparar qualquer coisa. Oito blocos de 512 bytes e quatro kibibytes são os dois 4.096 bytes, e a concordância é invisível até os dois serem expressos assim. Scripts que comparam uma contagem de bloco armazenada contra um total de kibibyte sem normalizar erram por um fator de dois.
Duas perguntas diferentes se escondem atrás da palavra tamanho. O comprimento de um arquivo é o número de bytes que contém; o espaço que ocupa é o número de blocos alocados multiplicado pelo tamanho do bloco. Para um arquivo de configuração de 100 bytes isso são 100 bytes e 4.096 bytes, uma diferença de quarenta vezes, e cada um é a resposta certa para uma pergunta diferente.
A lacuna corre nas duas direções. Um arquivo esparso — um com regiões não escritas que nunca foram alocadas — reporta um comprimento bem maior que os blocos que guarda, motivo de uma imagem de disco virtual poder listar 40 GiB e ocupar 3. Converter um total de bloco em kibibyte para byte diz o que o armazenamento está carregando; converter um comprimento diz o que uma cópia do arquivo vai produzir.
Limites de recurso do shell misturam suas unidades e a mistura não é óbvia na saída. O limite de tamanho de pilha e o limite de memória virtual são em kibibyte, então um limite de pilha lendo 8192 são 8.388.608 bytes. O limite de tamanho de arquivo é em blocos de 512 bytes por padrão no bash. Ler um conjunto de limites como se compartilhassem uma unidade produz um teto de memória errado por um fator de dois numa direção ou outra.
O motivo de converter isso geralmente é que algo mais está expresso em byte. Um processo que falha com um erro de memória reporta a alocação que tentou em byte; comparar isso contra um limite reportado em kibibyte custa uma multiplicação e transforma um chute numa resposta.
Abaixo de uma certa granularidade, a contagem de byte para de ser o número útil. Memória é entregue em páginas, e na maioria dos sistemas uma página são 4.096 bytes. Sistemas de arquivo alocam em blocos, e o padrão comum é a mesma figura. Discos com o formato de setor mais novo apresentam setores de 4.096 bytes. As camadas se empilham direitinho porque todas escolheram a mesma potência de dois.
Esse alinhamento é por que tamanhos de buffer, entradas de cache e comprimentos de registro se agrupam em múltiplos de 4.096. Uma leitura de 4.000 bytes toca a mesma página que uma leitura de 4.096 e custa o mesmo; um registro de 4.100 bytes atravessa dois blocos e custa o dobro das escritas que parece precisar.
Nessa escala a diferença entre um kilobyte e um kibibyte são 24 bytes, e para a maioria dos propósitos desaparece no arredondamento. Um peso de página citado como 500 kB não é significativamente diferente de 500 KiB, e discutir a distinção num arquivo só é tempo mal gasto.
Fica relevante quando é multiplicado. Um milhão de registros de 4 KiB cada são 4.096.000.000 bytes, não 4.000.000.000, e um planejamento de capacidade construído na segunda figura já fica 96 MB curto antes de qualquer coisa inesperada acontecer. O mesmo vale para contabilidade por requisição, cálculo de cota, e qualquer coisa onde uma unidade pequena é contada um número grande de vezes.
Nem todo k é 1.024, e presumir o contrário é seu próprio erro. Taxa de rede, franquia de transferência, capacidade de armazenamento e qualquer coisa impressa numa embalagem são decimais, então um kilobyte nesses contextos são 1.000 bytes e multiplicar por 1.024 superestima o resultado em 2,4 por cento. O mesmo leitor que aprendeu a desconfiar de um k na saída de shell precisa lembrar de confiar nele numa fatura.
A regra que cobre os dois sem muito esforço: se o número descreve o que uma máquina está fazendo internamente, é binário; se descreve o que está sendo vendido, transferido ou anunciado, é decimal. Essa heurística não é perfeita, mas as exceções se anunciam — uma ferramenta que quer dizer 1.000 geralmente tem uma opção dizendo isso.
Contagens de byte permanecem exatas em qualquer tipo inteiro largo o suficiente para guardá-las, e uma figura em kibibyte multiplicada por 1.024 permanece exata também. O problema começa quando um valor já foi arredondado para exibição: uma ferramenta imprimindo 1,4 KiB jogou fora a contagem de byte, e multiplicar a figura arredondada de volta dá algo entre 1.382 e 1.485. Recuperar o original não é possível, então pegue a contagem de byte da fonte em vez do resumo onde os dois existirem.
A maioria das ferramentas produz byte bruto sob pedido, e essa saída é a que vale alimentar em qualquer coisa automatizada. Formatação legível por humano é uma escolha de exibição feita no último momento, e tratar isso como dado é como um pipeline de monitoramento acaba com tamanhos que desviam por alguns pontos percentuais sem ninguém conseguir explicar depois.
1 KiB é 1024 B. A equivalência entre kibibyte e byte é fixa; o número exibido é limitado a doze algarismos significativos para evitar ruído de ponto flutuante.
Não. O cálculo acontece no seu navegador. Você pode desconectar da internet e continuar calculando, que aliás é a forma mais simples de conferir isso.
Porque duas unidades diferentes têm o mesmo nome. Os fabricantes contam 1 GB = 1.000.000.000 bytes; o Windows mostra gibibytes, ou seja 1.073.741.824 bytes, mas chama de «GB». O mesmo disco parece assim sete por cento menor. Nada sumiu.
Um B é 0,000976563 KiB. É a mesma relação lida de trás para frente, então um resultado de uma página passado pela outra tem que voltar ao ponto de partida.
O que esta página afirma sobre unidades de informação pode ser conferido, e estes são os documentos que resolvem a questão.
O fator é uma constante na página e a conta são quatro operações, então nada é enviado a lugar nenhum e nada precisa ser. O número que você digita não sai do navegador — não existe requisição em que ele pudesse viajar.