Codificação binária decimal

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa

A codificação binária decimal ou codificação binária, também conhecida como BCD (Binary-coded decimal), é um sistema de numeração muito utilizado na Informática, assim como na Matemática, e em sistemas digitais eletrônicos. Estamos falando de um sistema de base dois e posicional, ou seja, utilizando apenas dois algarismos: o 0 (zero) e o 1 (um). [1] A combinação de posições diferentes corresponde a um novo valor, de forma semelhante ao sistema de numeração decimal. A forma de representação pode ser utilizando um nibble de 4 bits, ou um byte de 8 bits. O nibble é normalmente o padrão de codificação decimal utilizado em muitos circuitos integrados. Também é o formato interno de numerais usado na linguagem Cobol e em sistemas de comunicação de dados, visando compactação de informações puramente numéricas.

História[editar | editar código-fonte]

As primeiras 122 civilizações sempre se preocuparam em criar um sistema de numeração simples para realizar operações básicas da Matemática em fatos cotidianos. As origens do Sistema binário são desconhecidas, porém existem relatos de que por volta de 3000 a.C. a China já utilizava esse sistema para contagens, somatórias, entre outras operações básicas da Matemática. Porém, o Sistema Binário só passou a ser novamente levantado em pauta 46 séculos depois com o cientista e engenheiro alemão Gottfried Wilhelm Leibniz, que além de defender esse Sistema de Numeração, aperfeiçoou e formalizou diversas combinações binárias para a representação de novos números, auxiliando posteriormente, as primeiras Linguagens de Programação. [2] Mais de um século depois, George Boole retomou os estudos de Leibniz, aperfeiçoando alguns conceitos e introduzindo o Sistema Binário em Sistemas Digitais. Mais tarde ainda, George Boole desenvolveria a Álgebra Booleana, fundamental em diversas áreas da Computação [3] .

Definição[editar | editar código-fonte]

O sistema binário é composto por dois algarismos fundamentais: o 0 (zero) e o 1 (um), onde suas posições indicam o valor expresso. Segundo Leibniz, o conceito de 0 (zero) no Sistema Binário seria o não, vazio, nada, a ausência de corrente na Lógica Digital, ou o false(falso) na Algébra de Boole , já o 1 (um) seria o oposto, o sim, tudo, Deus no conceito de Leibniz, a presença de corrente elétrica na Lógica Digital, ou o true(verdadeiro) na Algébra de Boole. Diferentemente da base decimal, os números no Sistema Binário são lidos inversamente, ou seja, da direita para esquerda, onde cada dígito recebe o nome de bit (Binary Digit), já um byte é composto por oito bits (uma sequência binária de oito dígitos) e a partir de então segue: 1 KB (1024 bytes), 1MB (1024 KB), e assim sucessivamente. A tabela a seguir ilustra algumas conversões do Sistema Binário para o Sistema Decimal. [4]

Sistema Decimal Sistema Binário
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
10 1010
100 1100100
1000 1111101000

E assim segue uma sequência linear de posições, onde cada combinação da posição dos bits inflige na formação de um novo algarismo.

Conversões[editar | editar código-fonte]

A conversão para outras bases é fundamental no Sistema Binário, em algumas calculadoras, por exemplo, ocorre uma conversão dos algarismos informados pelo usuário para base binária para execução da operação matemática, e após isso há uma nova conversão para base decimal para exibição do resultado.[5] No sistema binário, a posição de um bit é fundamental na conversão para outra base. O primeiro bit a direita (o último no sistema decimal) corresponde à posição 0 (zero), o segundo bit a direita à posição 1 (um) e assim sucessivamente. Exemplo:
1 3 0 2 0 1 0 0


Nesse exemplo o 1 (um) “ocupa” a posição 3, o primeiro 0 (zero) a posição 2, o segundo 0 (zero) a posição 1 e o último 0 (zero) a posição 0.


Além da necessidade funcional, o processo de conversão entre uma base e outra é fundamental para o uso da informação, pois no Sistema de numeração binário, a partir de certo valor, passamos a ter muitas posições, o que torna cálculo e a leitura dos números cada vez mais complexos. As conversões mais comuns são de binário para as bases: octal, decimal e hexadecimal.

Binário - Octal[editar | editar código-fonte]

A conversão de binário para Octal utiliza o seguinte processo [6] :

1 - Agrupa-se o número binário em 3 bits:
10101001 → 10 - 101 - 001


2 - Soma-se os produtos, da base 2(dois) elevado à posição equivalente:

  • a) 10 = [(1 x 21) + (0 x 20)] = (2 + 0) = 2
  • b) 101 = [(1 x 22) + (0 x 21) + (1 x 20)] = (4 + 0 + 1) = 5
  • c) 001 = [(0 x 22) + (0 x 21) + (1 x 20)] = (0 + 0 + 1) = 1


3 - Junta-se as somas:
A seguir, junta-se as somas da primeira operação realizada até a última, no caso citado(2, 5, 1), formando o algarismo 251 na base octal.

A operação inversa segue os seguintes passos:

1 – Separa os algarismos do número na base Octal:
251 → 2 - 5 - 1


2 – Converte-se cada um desses algarismos para seu respectivo número binário de 3 bits:

  • a) 2 = 010
  • b) 5 = 101
  • c) 1 = 001

3 - Junta-se as somas:
A seguir, junta-se as somas da primeira operação realizada até a última, no caso citado(010, 101, 001), formando o algarismo 010101001 ou simplesmente 10101001 na base binária.

Binário - Decimal[editar | editar código-fonte]

A conversão de binário para Decimal utiliza o seguinte processo [7] [8] :


1 - Separa-se cada bit do número binário:
1010 → 1 - 0 - 1 - 0


2 - Somam-se os produtos da base dois elevados a respectiva posição:

  • a) 0 x 20 = 0
  • b) 1 x 21 = 2
  • c) 0 x 22 = 0
  • d) 1 x 23 = 8


3 - Soma-se os resultados obtidos:
Como trata-se de uma soma, tanto faz a sequencia dos resultados(0, 2, 0, 8), logo 0 + 2 + 0 + 8, que corresponde a 10 no sistema decimal.


A operação inversa segue os seguintes passos:

1 - Dividimos o algarismo na base decimal por 2, até o seu resto ser igual a 1 e seu quociente ser igual a zero.


 \frac{23}{2} = 11 - Resto = 1


 \frac{11}{2} = 5 - Resto = 1


 \frac{5}{2}  = 2 - Resto = 1


 \frac{2}{2}  = 1 - Resto = 0


 \frac{1}{2}  = 0 - Resto = 1


2 - Junta-se os restos da última divisão até a primeira:
Nesse caso, (1, 0, 1, 1, 1), formam o algarismo 10111 da base binária que corresponde ao algarismo 23 da base decimal.

Binário - Hexadecimal[editar | editar código-fonte]

A conversão de binário para hexadecimal utiliza o seguinte processo [9] :


1 - Agrupa-se o número binário em 4 bits:
10101001 → 1010 - 1001


2 - Soma-se os produtos, da base 2(dois) elevado à posição equivalente:


  • a) 1010 = [(1 x 23) + (0 x 22) + (1 x 21) + (0 x 20)] = (8 + 0 + 2 + 0) = 10 = A
  • b) 1001 = [(1 x 23) + (0 x 22) + (0 x 21) + (1 x 20)] = (8 + 0 + 0 + 1) = 9


3 - Junta-se as somas:
A seguir, junta-se as somas da primeira operação realizada até a última, no caso citado(A, 9), formando o algarismo A9 na base hexadecimal.

A operação inversa segue os seguintes passos:


1 – Separa os algarismos do número na base hexadecimal:
C13 → C - 1 - 3


2 – Converte-se cada um desses algarismos para seu respectivo número binário de 4 bits:

  • a) C = 12 = 1100
  • b) 1 = 0001
  • c) 3 = 0011


3 - Junta-se as somas:
A seguir, junta-se as somas da primeira operação realizada até a última, no caso citado(1100, 0001, 0011), formando o algarismo 110000010011 na base binária.

Referências

  1. "O Sistema Binário" de DIEGO, Darlan, Disponível em http://www.oficinadanet.com.br/artigo/1347/o_sistema_binario
  2. Capítulo 7 - MARTINS, João Paulo Gouveia, FIGUEIREDO, Rui e VAZ, Nuno Ricardo Elias em: "A História dos Números", Disponível em http://pt.scribd.com/doc/31222298/56/Historia-do-Sistema-Binario
  3. Biografia de George Boole - Wikipédia - http://pt.wikipedia.org/wiki/George_Boole
  4. Disponível em: http://student.dei.uc.pt/~jsilva/informaticabasica/computador/informacao/binario.html
  5. Disponível em: http://wwwusers.rdc.puc-rio.br/rmano/rd8bcd.html
  6. "Sistemas de Numeração Conversão Entre Bases" de STEINMACHER, Igor - Aula 02 - Slides 6 à 8 - Disponível em: http://igor.pro.br/utfpr/2009/utfpr/arquivos/IM21A0/aula02.pdf
  7. "Sistemas de Numeração" de STEINMACHER, Igor - Aula 01 - Slides 3 à 19 - Disponível em: http://igor.pro.br/utfpr/2009/utfpr/arquivos/IM21A0/aula01.pdf
  8. Disponível em: http://www.raymundodeoliveira.eng.br/binario.html
  9. "Sistemas de Numeração Conversão Entre Bases" de STEINMACHER, Igor - Aula 01 - Slides 9 à 18 - Disponível em: http://igor.pro.br/utfpr/2009/utfpr/arquivos/IM21A0/aula02.pdf

Ver também[editar | editar código-fonte]

Ícone de esboço Este artigo sobre Informática é um esboço. Você pode ajudar a Wikipédia expandindo-o.