Cadeia de bits: mudanças entre as edições
(trocando "tamanho" por "comprimento" e explicando melhor) |
(mv exemplo) |
||
Linha 216: | Linha 216: | ||
|} | |} | ||
Dentro de um mesmo comprimento, a ordem lexicográfica coincide com a ordem numérica se as ''bitstrings'' forem transformadas em números. Exemplo: | Dentro de um mesmo comprimento, a ordem lexicográfica coincide com a ordem numérica se as ''bitstrings'' forem transformadas em números. Ver exemplo na seção abaixo. | ||
== Números naturais e cadeias de comprimento 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 <math>C_k</math> de todas as cadeias possíveis de comprimento ''k'' pode ser expresso como conjunto de todos os números naturais de zero a <math>2^k-1</math>, acrescentando-se zeros à esquerda quando seu comprimento for menor que ''k''. <br/>Por exemplo com ''k''=2 temos ''C''<sub>2</sub>={<code>00</code>, <code>01</code>, <code>10</code>, <code>11</code>}. Ignorando os zeros a esquerda, correspondem à representação binária dos números naturais zero até <math>2^1-1=3</math>, ou seja, em decimal o conjunto ''C'''<sub>2</sub>={0,1,2,3}⊂ℕ. | |||
Essa correspondência, um isomorfismo entre cadeias de bits ''C''<sub>k</sub> e números naturais ''C'''<sub>k</sub>, permite que computadores representam "números de ''k'' bits". Quando falamos de "inteiros de ''k'' bits", tipicamente 32 e 64 bits, há que se descontar o primeiro bit relativo ao sinal. | |||
Exemplo, listando cadeias de bits (''bitstring''s) em ''level order'' com respectivos comprimentos e valores numéricos: | |||
<pre> | <pre> | ||
bitstring | comprimento | val_numerico | bitstring | comprimento | val_numerico | ||
Linha 252: | Linha 261: | ||
... | ... | ||
</pre> | </pre> | ||
=== Erros e adulterações em cadeias === | === Erros e adulterações em cadeias === |