Circuitos Digitais - Códigos

Na codificação, quando números ou letras são representados por um grupo específico de símbolos, diz-se que esse número ou letra está sendo codificado. O grupo de símbolos é chamado decode. Os dados digitais são representados, armazenados e transmitidos como um grupo de bits. Este grupo de bits também é chamado debinary code.

Os códigos binários podem ser classificados em dois tipos.

  • Códigos ponderados
  • Códigos não ponderados

Se o código tem pesos posicionais, então é dito que é weighted code. Caso contrário, é um código não ponderado. Os códigos ponderados podem ser classificados como códigos com ponderação positiva e códigos com ponderação negativa.

Códigos binários para dígitos decimais

A tabela a seguir mostra os vários códigos binários para dígitos decimais de 0 a 9.

Dígito Decimal Código 8421 Código 2421 Código 84-2-1 Excesso de 3 Código
0 0000 0000 0000 0011
1 0001 0001 0111 0100
2 0010 0010 0110 0101
3 0011 0011 0101 0110
4 0100 0100 0100 0111
5 0101 1011 1011 1000
6 0110 1100 1010 1001
7 0111 1101 1001 1010
8 1000 1110 1000 1011
9 1001 1111 1111 1100

Temos 10 dígitos no sistema numérico decimal. Para representar esses 10 dígitos em binário, exigimos um mínimo de 4 bits. Mas, com 4 bits, haverá 16 combinações exclusivas de zeros e uns. Visto que temos apenas 10 dígitos decimais, as outras 6 combinações de zeros e uns não são necessárias.

8 4 2 1 código

  • Os pesos deste código são 8, 4, 2 e 1.

  • Este código tem todos pesos positivos. Então, é umpositively weighted code.

  • Este código também é chamado de natural BCD (Decimal codificado em binário) code.

Example

Vamos encontrar o BCD equivalente ao número decimal 786. Este número tem 3 dígitos decimais 7, 8 e 6. Da tabela, podemos escrever os códigos BCD (8421) de 7, 8 e 6 são 0111, 1000 e 0110, respectivamente .

∴ (786)10 = (011110000110)BCD

Existem 12 bits na representação BCD, visto que cada código BCD de dígito decimal possui 4 bits.

2 4 2 1 código

  • Os pesos deste código são 2, 4, 2 e 1.

  • Este código tem todos pesos positivos. Então, é umpositively weighted code.

  • É um unnatural BCDcódigo. A soma dos pesos dos códigos BCD não naturais é igual a 9.

  • É um self-complementingcódigo. Os códigos de autocomplementação fornecem o complemento de 9 de um número decimal, apenas trocando 1s e 0s em sua representação equivalente de 2421.

Example

Vamos encontrar o equivalente 2421 do número decimal 786. Esse número tem 3 dígitos decimais 7, 8 e 6. Na tabela, podemos escrever os 2421 códigos de 7, 8 e 6 que são 1101, 1110 e 1100 respectivamente.

Portanto, o equivalente 2421 do número decimal 786 é 110111101100.

8 4 -2 -1 código

  • Os pesos deste código são 8, 4, -2 e -1.

  • Este código tem pesos negativos junto com pesos positivos. Então, é umnegatively weighted code.

  • É um unnatural BCD código.

  • É um self-complementing código.

Example

Vamos encontrar o equivalente 8 4-2-1 do número decimal 786. Este número tem 3 dígitos decimais 7, 8 e 6. Da tabela, podemos escrever os códigos 8 4 -2 -1 de 7, 8 e 6 são 1001, 1000 e 1010, respectivamente.

Portanto, o equivalente 8 4 -2 -1 do número decimal 786 é 100110001010.

Excesso de 3 código

  • Este código não tem pesos. Então, é umun-weighted code.

  • Obteremos o código Excess 3 de um número decimal adicionando três (0011) ao equivalente binário desse número decimal. Por isso, é chamado de código Excesso 3.

  • É um self-complementing código.

Example

Vamos encontrar o equivalente em Excesso 3 do número decimal 786. Esse número tem 3 dígitos decimais 7, 8 e 6. Na tabela, podemos escrever os códigos de Excesso 3 de 7, 8 e 6 são 1010, 1011 e 1001, respectivamente.

Portanto, o equivalente em Excesso 3 do número decimal 786 é 101010111001

Código Cinza

A tabela a seguir mostra os códigos Gray de 4 bits correspondentes a cada código binário de 4 bits.

Número decimal Código binário Código Cinza
0 0000 0000
1 0001 0001
2 0010 0011
3 0011 0010
4 0100 0110
5 0101 0111
6 0110 0101
7 0111 0100
8 1000 1100
9 1001 1101
10 1010 1111
11 1011 1110
12 1100 1010
13 1101 1011
14 1110 1001
15 1111 1000
  • Este código não tem pesos. Então, é umun-weighted code.

  • Na tabela acima, os códigos Gray sucessivos são diferenciados em apenas uma posição de bit. Portanto, este código é chamado deunit distance código.

Código binário para conversão de código cinza

Siga estas etapas para converter um código binário em seu código Gray equivalente.

  • Considere o código binário fornecido e coloque um zero à esquerda do MSB.

  • Compare os dois bits sucessivos começando do zero. Se os 2 bits forem iguais, a saída será zero. Caso contrário, a saída é um.

  • Repita a etapa acima até que o código LSB de Gray seja obtido.

Example

Pela tabela, sabemos que o código Gray correspondente ao código binário 1000 é 1100. Agora, vamos verificá-lo usando o procedimento acima.

Dado, o código binário é 1000.

Step 1 - Colocando zero à esquerda do MSB, o código binário será 01000.

Step 2 - Ao comparar dois bits sucessivos do novo código binário, obteremos o código cinza como 1100.