Sistemas de Numeração, Codificação e Organização de Dados

Sistemas de Numeração, Codificação e Organização de Dados

(Parte 1 de 4)

Técnicas e Subsistemas Digitais André Luis Lenz Maio/2010 1

Sistemas de Numeração, Codificação e Organização de Dados

1. Sistemas de Numeração:

Desde tempos remotos o homem utiliza a escrita para registrar e transmitir informação. A escrita vai do antigo hieróglifo egípcio até o alfabeto latino atual.

O alfabeto, como conjunto de símbolos, se desenvolve originalmente na Grécia e posteriormente em Roma e constitui a origem de nosso alfabeto atual.

Uma das primeiras tentativas de registro de quantidades sob a forma escrita foi o sistema de numeração indo-arábico, do qual são derivados os atuais sistemas de numeração decimal.

Sistema de numeração é o conjunto de símbolos utilizados para representação de quantidades e as regras que definem a forma de representação. Um sistema de numeração é determinado fundamentalmente pela base (número de símbolos utilizados). A base é o coeficiente que determina qual o valor de cada símbolo de acordo com a sua posição.

Muitos sistemas modernos de computação não representam valores numéricos usando o sistema decimal. Em vez disso, eles simplesmente usam o binário ou o sistema de numeração de complemento de dois. Para entender as limitações da aritmética do computador, você deve entender como os computadores representam os números.

1.1 Uma Revisão do Sistema Decimal:

Você já deve ter utilizado o sistema decimal (base 10) por tanto tempo que provavelmente o acha muito natural. Quando você vê um número como "123", você não pensa sobre o valor 123; ao contrário, você gera uma imagem mental de quantos itens este valor representa. Na realidade, contudo, o número 123 representa:

1 Centena + 2 Dezenas

+ 3 Unidades

Ou seja:

Cada dígito aparecendo à esquerda do ponto decimal (ou da virgular, conforme a preferência) representa um valor entre 0 e 9 que multiplica uma potência positiva de base dez.

De modo semelhante, dígitos aparecendo à direita do ponto decimal representam um valor entre 0 e 9 que multiplica uma potência negativa de base dez.

Por exemplo, o valor 123,456 significa:

Técnicas e Subsistemas Digitais André Luis Lenz Maio/2010 2

1.2 O Sistema de Numeração Binário

Muitos dos modernos sistemas de computação (incluindo o IBM PC e seus descendentes) operam utilizando a lógica binária. O computador representa valores utilizando dois níveis de tensão elétrica (geralmente 0v e +5v). Com esses dois níveis nós podemos representar exatamente dois valores. Esses podem ser quaisquer dois valores, mas por convenção utilizamos os valores zero e um, ou seja, o sistema de numeração binário possui apenas dois algarismos: 0 e 1. Por isso a sua base é dois (base 2 dois dígitos).

Assim, o sistema de numeração binário funciona exatamente como o sistema decimal, com duas exceções:

O sistema binário permite apenas os dígitos 0 e 1 (e não 0-9);

O sistema binário utiliza potências de dois, o que é diferente das potências de dez.

Cada algarismo ou digito binário é chamado de bit. Este termo “bit” tem origem na contração de duas palavras inglesas “binary digit”, ou seja digito binário.

Então, é muito fácil converter um número em binário para decimal, pois vale as mesmas regras:

Cada bit aparecendo à esquerda do ponto decimal representa um valor entre 0 e 1 que multiplica uma potência positiva de base dois.

De modo semelhante, dígitos aparecendo à direita do ponto decimal representam um valor entre 0 e 1 que multiplica uma potência negativa de base dois..

Por exemplo, o valor binário 110010,1 representa:

1.2.1 Conversão de números em decimal para números em binário

Para converter números em decimal para binário é um pouco mais difícil. Para números em base 10 inteiros podemos seguir a seguinte técnica:

Técnicas e Subsistemas Digitais André Luis Lenz Maio/2010 3

Toma-se o número decimal a ser convertido para binário e procede-se sucessivas divisões por 2, com quocientes inteiros, e restos que poderão ser 0 ou 1. Divide-se sucessivamente por 2, até obtermos um quociente igual a zero. O valor convertido corresponde aos restos das divisões sucessivas, sendo que o último resto obtido é o algarismo mais significativo do numero binário.

Exemplo: Converte 25210 para binário:

Muitas calculadoras cientificas fazem essas operações de conversão entre bases numéricas, usando a função (modo) Bin Dec ou Dec Bin, mas a maioria delas só aceita trabalhar com números binários e decimais inteiros para tais conversões.

A fim de conferir se o resultado da conversão exemplificada anteriormente está realmente correto, podemos tirar uma prova de seu resultado, fazendo a reconversão:

Uma outra técnica pode ser utilizada, e que é de fato a técnica mais usada pelos profissionais mais experimentados na manipulação de números binários. Com a prática, está técnica se torna mais rápida que a técnica de divisão sucessiva por dois. È necessário apenas estar bem familiarizado com a potencia de base dois.

Exemplo: Suponhamos que desejamos converter o número 1257 10 para binário.

Vamos escrever então uma série de potência de base dois, que termine na maior potências de dois (2n) que pode ser subtraída do número decimal o qual deseja-se converter, desde que o resultado da diferença seja igual ou maior que zero.

2
2

126 MENOS

2
2
2

Técnicas e Subsistemas Digitais André Luis Lenz Maio/2010 4

Então, fazemos a operação de subtração: 1257 10 – 1024 10 = 233 10

Uma vez realizada esta operação, assinalar o valor “1” na posição 210 , como sendo o algarismo mais significativo do número convertido;

Caso a diferença tivesse sido igual a zero, nós deveríamos agora assinalar o valor

“0” para cada uma das potências de base dois imediatamente inferior (29; 28; 27 , e assim sucessivamente até atingir 20);

Mas caso resto um saldo de diferença, ou seja, uma diferença maior que zero, e que neste caso é de 233 10, assim, devemos ir buscar na nossa série a próxima potência de base dois imediatamente inferior, que no caso é 29 , e tentar subtraí-la do saldo com a condição de que o resultado da diferença seja igual ou maior que zero. Assinalar o valor “1” para o caso dessa operação de subtração poder ser realizada, caso contrário assinalar “0”;

Bem, como a potência de base dois imediatamente inferior é 29 , ou seja, 512 10,, assim não é possível subtraí-la de 233 10, sem que o resultado fique negativo. Então não vamos realizar esta subtração: vamos assinalar “0” e vamos prosseguir para a próxima potência de base dois imediatamente inferior.

Então damos uma olhada na nossa série e constatamos que a potência de base dois imediatamente inferior é no caso 28 , ou seja 256 e devemos tentar subtraí-la do saldo, desde que o resultado da diferença seja igual ou maior que zero. Assinalar o valor “1” para o caso dessa operação de subtração poder ser realizada, caso contrário assinalar “0”;

Como 256 10 é superior a 233 10, não fazemos a subtração, assinalamos “0” e prosseguimos para a próxima potência imediatamente inferior.

1
1 0

maior potências de dois que ao ser subtraída de 1257 resultando em uma diferença maior ou igual a zero

A diferença é positiva

Técnicas e Subsistemas Digitais André Luis Lenz Maio/2010 5

(Parte 1 de 4)

Comentários