(Tocci et al., 2011) Em determinado sistema digital, os números decimais de 000 a 999 são representados em código
. Um bit de paridade ímpar foi anexado ao final de cada sequência de bits. Analise cada código a seguir e admita que cada sequência de bits tenha sido transmitida de um local para outro. Algumas das sequências de bits contêm erros. Suponha que não tenham ocorrido mais que dois bits errados para cada sequência. Determine qual(is) contém(êm) um único bit errado e qual(is), definitivamente, contém(êm) dois. (Dica: lembre-se de que se trata de um código BCD.)
(a) 1001010110000
lsb
bit de paridade
(b) 0100011101100
(c) 0111110000011
(d) 1000011000101
(a) 1001010110000
(b) 0100011101100
(c) 0111110000011
(d) 1000011000101
Passo 1
O enunciado diz que números decimais de
a
são codificados em BCD (
dígitos,
bits cada) e depois se anexa um bit de paridade ímpar no final, totalizando
bits. Cada sequência recebida pode ter até
bits errados. Temos quatro sequências e precisamos identificar:
- Quais têm exatamente
bit errado (paridade detecta erro ímpar). - Quais, definitivamente, têm
bits errados (paridade “correta” mas BCD inválido ou necessidade de flips).
Passo 2
Em BCD cada grupo de
bits deve representar um dígito de
a
(ou seja, de
até
). O bit de paridade ímpar faz com que a soma de todos os bits (
de dados
de paridade) seja um número ímpar.
- Se a checagem de paridade falha, houve número ímpar de erros (
ou ), mas como não podem ser , é exatamente . - Se a paridade “casa” (soma é ímpar), só pode haver
ou erros. Se também detectarmos BCD inválido, não pode ser , logo é .
Passo 3
Analisando (a)
:
- Nibbles:
, , . Todos válidos em BCD. - Paridade: contei
uns entre todos os bits, que é ímpar, logo paridade está correta.
Conclusão: erros em número par (ou ); portanto não é bit, mas pode ser ou .
Passo 4
Analisando (b)
:
- Nibbles:
, , . Todos válidos. - Paridade: há
uns no total, soma é par, mas o bit de paridade exige ímpar falha de paridade.
Conclusão: houve número ímpar de errosexatamente bit.
Passo 5
Analisando (c)
:
- Nibbles:
ok; inválido em BCD; ok. - Paridade: contei
uns, soma é ímpar paridade aparentemente correta erros em número par ( ou ).
Mas não pode ser(há BCD inválido), logo são bits errados.
Passo 6
Analisando (d)
:
- Nibbles:
, , . Todos válidos. - Paridade: há
uns, soma ímpar paridade correta ou erros. Pode ser código sem erro ou com erros.
Resposta
(b) contém exatamente um bit errado.
(c) contém definitivamente dois bits errados.
(c) contém definitivamente dois bits errados.