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&nbsp;''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&nbsp;''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>
== 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&nbsp;''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&nbsp;''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.


=== Erros e adulterações em cadeias ===
=== Erros e adulterações em cadeias ===