Cadeia de bits

De Documentação
Revisão de 08h02min de 31 de maio de 2023 por Peter (discussão | contribs) (revisando)
Turing imaginava uma fita infinita de bits, para trabalhar a vontade nos primeiros computadores.

A noção de "cadeia de bits" (bit string) foi desenvolvida pela Lógica Matemática, principalmente no início dos anos 1900, e consagrada pelos trabalhos de Turing (1937) e Shannon (1948).

Ela difere de um número natural binário por permitir zeros à esquerda. Por exemplo o número natural binário 0001001 é equivalente a 1001, mas se dizemos que 0001001 é uma cadeia de bits, aí essa equivalência deixa de existir.

A rigor, portanto, a cadeia de bits não pode ser vista como número natural. Ela se mantém íntegra quando interpretada como um código natural.

Tamanho

Toda cadeia de bits pode ter seu tamanho medido: é a quantidade de bits na cadeia. Uma cadeia de zero bits é uma cadeia vazia.

A função lenght(x) retorna a medida de tamanho da cadeia x. Exemplos: lenght(00)=2;  lenght(11)=2;  lenght(010101001)=9.

O tamanho permite classificar cadeias: toda cadeia de tamanho k é elemento da "classe k", ou seja, o conjunto infinito de todas as cadeias de tamanho k.

Números naturais e tamanho fixo

Nos computadores, tradicionalmente, os números inteiros positivos são representados com zeros a esquerda para completar o número de bits desejado.

O conjunto de todas as cadeias possíveis de tamanho k pode ser expresso como conjunto de todos os números naturais de zero a , acrescentando-se zeros à esquerda quando seu tamanho for menor que k.

Há um claro isomorfismo entre as cadeias de e os números naturais de zero a .

No computador, por tradição (ou culpa de softwares mal projetados), pode-se erroneamente forçar que uma cadeia de bits de tamanho fixo seja interpetada como um número. Com a promoção dos códigos naturais a cidadões de primera classe, esse erro pode ser evitado.

Referências

Formalizações históricas:

Uso prático: