Qual é a origem de K = 1024? [fechadas]

73

Por que a discrepância no número de bytes em um kilobyte existe? Em alguns lugares, vi o número 1024 (2 10 ), enquanto em outros, 1000 (e a diferença fica cada vez maior com M, G, T, etc.).

Esta não é uma discussão sobre se deve ser 1024 ou 1000 (embora você possa discutir isso nos comentários), mas sobre onde / quando esta situação se originou e / ou se generalizou.

Até onde eu sei, os fabricantes de Linux e hardware nunca usam a variante 1024. Isso, e boatos, me fazem pensar que o MS-DOS tornou essa versão comum, mas quais são os fatos?

    
por Bart van Heukelom 23.05.2011 / 13:00

6 respostas

63

Ele remonta há algum tempo e é detalhado aqui . Parece que você pode culpar a IBM, se alguém.

Tendo pensado sobre isso um pouco mais, eu culparia os americanos como um todo, por sua desconsideração pelo sistema internacional d'unités : P

    
por 23.05.2011 / 13:05
26

Toda a computação foi de baixo nível no começo. E na programação de baixo nível, o número "1000" é totalmente inútil e eles precisavam de prefixos para quantidades maiores, então eles reutilizavam os SIs. Todo mundo sabia disso no campo, não havia confusão. Ele serviu bem por 30 anos ou quem sabe.

Não é porque eles eram americanos, então eles precisavam quebrar a SI a todo custo. : -)

Não há programador que eu conheça e diga kibibyte. Dizem kilobyte e significam 1024 bytes. Algoritmos estão cheios dos poderes de 2. Até hoje, "1000" é um número realmente inútil entre programadores.

Dizer kibi e mibi é engraçado demais e chama a atenção do assunto. Nós alegremente o entregamos para os setores de telecomunicação e armazenamento em disco :-). E vou escrever kibibytes em interfaces de usuário onde não programadores podem lê-lo.

    
por 23.05.2011 / 17:09
8

É correto e faz sentido que pessoas técnicas usem 1024 = 1K em muitos casos.

Para os usuários finais, normalmente é melhor dizer 1000 = 1k porque todos estão acostumados ao sistema de numeração baseado em 10.

O problema é onde desenhar a linha. Às vezes, as pessoas de marketing ou publicidade não conseguem realmente a "tradução" ou adaptar os dados técnicos e a linguagem aos usuários finais.

    
por 23.05.2011 / 13:18
3

Fabricantes de semicondutores de culpa (eles fornecem apenas hardware binário) [1]

Melhor ainda: culpe a própria lógica (a lógica binária é apenas a lógica mais elementar).

Melhor ainda: quem devemos culpar pelo sistema decimal miserável ?

Tem muito mais falhas do que o sistema binário. Foi baseado tosse no n�ero m�io de dedos na espécie humana tosse

Oooo ...

[1] Eu quero meu computador quântico de três qubits !!! Agora!

    
por 23.05.2011 / 16:56
1

1024 não é para ser culpado, é uma coisa muito boa, pois é a razão pela qual o computador (digital) pode ser tão rápido e eficiente quanto é hoje. Como o computador usa apenas 2 valores (0,1), elimina a dificuldade e a complexidade (imprecisão) do sistema anológico da equação.

Seria mais complicado se disséssemos que um kilobyte é de 1000 bits porque 2 a qual potência é 1000? por isso, mesmo 1 kilobyte seria impreciso porque terá pontos flutuantes ou uma aproximação.

Mas, em grande parte, culpo o marketing por vender 8 gigabytes * e adiciona isso nas letras pequenas

* 1 gigabyte is 1,000,000,000 bytes. 

realmente é uma vergonha, é a mesma coisa com a velocidade de conexão, seu ISP dirá 1.5Mbps ao invés de dizer ~ 150 kiloBytes. é muito enganador

    
por 23.05.2011 / 17:51
0

Quando você considera que os números em computadores são binários, e 2 ^ 10 é 1024, faz todo o sentido. É muito mais fácil trabalhar com 1024 em vez de 1000, porque você pode dividir facilmente por 1024 usando apenas matemática inteira e mudança de bit . Dividir por 1000 é uma operação muito mais cara, que pode precisar de matemática de ponto flutuante.

Por exemplo,

bytes = 1 073 741 824
kilobytes = bytes >> 10 = 1 048 576
megabytes = kilobytes >> 10 = 1024
gigabytes = megabytes >> 10 = 1
    
por 24.05.2011 / 11:06