» Início » Programação » C e C++ » Linguagem C estruturada, parte 2 - Sistema Numérico Binário
 
Avaliação: | Publicado em: 17/11/2006
Linguagem C estruturada, parte 2 - Sistema Numérico Binário
Alexandre Rodrigues Nettho Atualmente trabalha com Desenvolvimento de Sistemas Web.


O sistema binário é um sistema de numeração posicional em que todas as quantidades se representam utilizando como base o número dois, com o que se dispõe das cifras: zero e um (0 e 1).

Os computadores digitais trabalham internamente com dois níveis de tensão, pelo que o seu sistema de numeração natural é o sistema binário (aceso, apagado). Com efeito, num sistema simples como este é possível simplificar o cálculo, com o auxílio da lógica booleana. Em computação, chama-se um dígito binário (0 ou 1) de bit, que vem do inglês Binary Digit. Um agrupamento de 8 bits corresponde a um byte (Binary Term). Um agrupamento de 4 bits é chamado de nibble.

O sistema binário é base para a Álgebra booleana que permite fazer operações lógicas e aritméticas usando-se apenas dois dígitos ou dois estados (sim e não, falso e verdadeiro, tudo ou nada, 1 ou 0, ligado e desligado). Toda eletrônica digital e computação está baseada nesse sistema binário e na lógica de Boole, que permite representar por circuitos eletrônicos digitais (portas lógicas) os números, caracteres, realizar operações lógicas e aritméticas. Os programas de computadores são codificados sob forma binária e armazenados nas mídias (memórias, discos, etc) sob este formato.

Operações com números binários

Binários a decimais

Dado um número N, binário, para expressá-lo em decimal, deve-se escrever cada número que o compõe (bit), multiplicado pela base do sistema (base = 2), elevado à posição que ocupa. Uma posição à esquerda da vírgula representa uma potência positiva e à direita uma potência negativa. A soma de cada multiplicação de cada dígito binário pelo valor das potências resulta no número real representado.

Exemplo:

1011

 1 x 23  +  0 x 22  +   1 x 21  +   1 x 20   = 11

Portanto, 1011 é 11 em decimal.

Decimais em binários

Decimais Inteiros em binários

Dado um número decimal inteiro, para convertê-lo em binário, basta dividi-lo sucessivamente por 2, anotando o resto da divisão inteira:

12 (decimal) → binário

12 / 2 = 6 + 0

6 / 2 = 3 + 0

3 / 2 = 1 + 1

1 / 2 = 0 + 1

12 decimal = 1100 binário

Obs: Os números devem ser lidos de baixo para cima: 1100 é 12 em binário.

Decimais Fracionários em binários

Exemplo:

0.562510

Multiplica-se a parte fracionária por 2 sucessivamente, até que ela seja igual a zero ou cheguemos na precisão desejada.

0.5625 x 2 = 1 + 0.1250

0.1250 x 2 = 0 + 0.2500

0.2500 x 2 = 0 + 0.5000

0.5000 x 2 = 1 + 0.0000 ← Nesta linha a fração zerou, finalizamos a conversão.

Anotando a seqüência na ordem de cima para baixo, temos:

1001

Portanto 0.562510 = 0.10012

Para ilustrar este processo, a fração decimal 0.90625 é convertida no seu equivalente binário.

O processo de multiplicação continua até que zera, ou a precisão desejada é obtida. Os inteiros são então coletados.

 

multiplicações

inteiro

 

0

0,90625 X 2 = 1,8125 = 0,8125

1

0,81250 X 2 = 1,6250 = 0,6250

1

0,62500 X 2 = 1,2500 = 0,2500

1

0,25000 X 2 = 0,5000 = 0,5000

0

0,50000 X 2 = 1,0000 = 1

1

 

O número 0.111012 = 0.9062510.

O processo inicia com um zero seguido dos resultados dos números multiplicados.

Exemplo de inteiro com fracionário:

14,37510  

Operações

resto

Resultados parciais

14 ÷ 2 = 7

0

 

7 ÷ 2 = 3

1

 

3 ÷ 2 = 1

1

 

1 ÷ 2 = 0

1

1410 = 11102

 

inteiro

 

0,375 X 2 = 0,750

0

 

0,750 X 2 = 1,500

1

 

0,500 X 2 = 1,000

1

0,37510 = 0,0112

Resultado geral

14,37510 = 1110.0112

 

Reparem na seqüência dos números em vermelho, para os inteiros começa de baixo para cima e para os fracionários de cima para baixo.

No entanto é mais comum nunca zerarmos a fração seguinte da multiplicação. Neste caso, devemos parar as multiplicações quando atingirmos uma certa precisão desejada.

Fico por aqui e no próximo artigo daremos continuidade.....


oscar adelino lamego <oscar_lamego@yahoo.com.br>
exercícios de conversão do sistema de numeração decimal e binário bem elaborado permite uma boa aprendizagem.
obrigado
Gostei muito. Explicação bem detalhada. Fácil compreensão.
Gostaria de saber sobre a base 3 e 4.
Marcos José Bastos Figueiredo <marcosbastos@fanese.edu.br>
O material é de otima qualidade e de forma didatica de facil entendimento : Não avaliado
Vicente da Luz <f_orientes@hotmail.com>
Muito
obrigado
pela excelente explicação
continuo, a aguardar mais esclareceimentos
abraço
sucessos
luiz sergio tinoco <luizsergiotinoco@hotmail.com>
Faço eletrônica no cefet e a explicação é direta e eficiente.Recomendei aos amigos para estudos básicos.
Excelente artigo.
Gostaria de saber o suficiente para trabalhar com programação. : Não avaliado
leandro dos santos <leandrogameover@yahoo.com.br>
Muito obrigado por ter deixado esse "atalho" para nós...............agora sei que amanhã na minha prova irei me dar bem!
valew!