Autor: Daniel Pereira Guimarães
Todos os direitos reservados.
Em nosso cotidiano utilizamos muitos números. E quase sempre estamos usando o sistema decimal, ou seja, números formados por dígitos de zero a nove. Porém existem outros sistemas numéricos, os quais são usados para os mais variados propósitos. Vejamos a seguir uma pequena lista dos principais sistemas numéricos:
Neste artigo estudaremos um pouco sobre os sistemas decimal, binário e hexadecimal.
Para iniciar nossos estudos vamos entender o que é um sistema numérico posicional. Para este propósito vamos considerar os números 4664 (decimal) e XXXVII (37 em romano). Vamos observar algumas propriedades importantes nestes dois números:
A partir destas observações podemos concluir que no sistema decimal o valor de um determinado símbolo depende de sua posição, ou seja, este é um sistema posicional. O mesmo não acontece com o sistema romano e, portanto, o sistema romano não é posicional.
Os sistemas binário e hexadecimal também são sistemas numéricos posicionais.
Como já vimos, em um sistema posicional um mesmo símbolo pode assumir valores diferentes dependendo de sua posição. Sendo assim, para sabermos o valor de qualquer número que esteja escrito em um sistema posicional, precisamos conhecer o valor posicional de cada símbolo. Isto é o que veremos a seguir.
Para calcular o valor de um determinado símbolo em um número que esteja representado com sistema posicional, precisamos aplicar a fórmula do valor posicional que é:
V = S * B ^ P
Vamos conhecer melhor esta fórmula:
V | Valor posicional do símbolo. Exemplo: o valor posicional do símbolo 4 no número decimal 345 é 40. |
S | Valor absoluto do símbolo. Exemplo: o valor do símbolo 4 no sistema decimal é 4. |
P |
É a posição em que o símbolo em questão se encontra no número. Esta posição
é definida da direita para esquerda e inicia em zero. Exemplos:
|
Obs.: |
Na fórmula V = S * B ^ P, usamos o asterisco para indicar multiplicação e
o acento circunflexo para indicar potência. Sendo assim leia-se esta fórmula como: V é igual a S que multiplica B elevado ao expoente P. |
Conhecendo esta fórmula fica fácil sabermos o valor de qualquer número, seja ele decimal, binário, hexadecimal, etc. Basta calcular o valor posicional de cada símbolo do número dado e então somar os valores encontrados. Vejamos um exemplo:
Vamos considerar novamente o número decimal 345.
Posição | 2 | 1 | 0 |
Símbolos | 3 | 4 | 5 |
Valor posicional |
V=3 * 10 ^ 2
V=3 * 100 V=300 |
V=4 * 10 ^ 1
V=4 * 10 V=40 |
V=5 * 10 ^ 0
V=5 * 1 V=5 |
Somando os valores encontrados temos:
30 + 40 + 5 = 345
Acredito que nunca precisaremos fazer todos estes cálculos para concluir que o número decimal 345 vale 345. Mas este é apenas um exemplo didático para demonstrar a aplicação a aplicação da fórmula do valor posicional.
Atenção!
Esta fórmula só se aplica a números que usem sistema posicional. Não é válida, por exemplo, para calcular números no sistema romano, visto que este não é um sistema posicional.
O sistema decimal é provavelmente o sistema numérico posicional mais antigo que conhecemos. Surgiu na Índia e, aos poucos, foi substituindo os demais sistemas numéricos existentes e hoje é quase universal. Para representar um número decimal usamos 10 símbolos (0, 1, 2, ..., 9), e portanto sua base é 10.
Para nós, seres humanos, o sistema numérico decimal é bastante satisfatório. No entanto para uma máquina, como o computador, este sistema não é muito prático, visto que os dados precisam ser interpretados usando-se o estado da corrente elétrica (ligada/desligada, alta/baixa, ou algo parecido). Para resolver este impasse foi elaborado o sistema de numeração binária, que usa os dígitos ZERO e UM em sua representação, os quais correspondem aos estados desligado e ligado, respectivamente. O uso de dois símbolos determina que este é um sistema de base 2. No sistema binário o valor de um símbolo (zero ou um) depende de sua posição, o que significa que este também é um sistema posicional.
Embora o sistema binário resolva o problema das máquinas eletrônicas, para nós o sistema decimal continua sendo o preferido. Então o que fazer para que possamos conviver harmoniosamente com os dois sistemas numéricos? Precisamos saber como converter números de decimal para binário e vice-versa.
Como representar o número 37 em binário? Para responder esta pergunta podemos utilizar uma calculadora científica. Como não teremos sempre uma calculadora científica ao nosso dispor é melhor aprender todos os passos para fazer tal conversão. Estes passos são, na verdade, divisões sucessivas do número dado por 2 (base do sistema binário), até que tenhamos um quociente zero. Veja abaixo como converter o número 37 para binário:
Dividendo | Divisor | Quociente | Resto |
37 | 2 | 18 | 1 |
18 | 2 | 9 | 0 |
9 | 2 | 4 | 1 |
4 | 2 | 2 | 0 |
2 | 2 | 1 | 0 |
1 | 2 | 0 | 1 |
Já sabemos como converter de decimal para binário. Agora vamos aprender a conversão inversa, ou seja, de binário para decimal. Para fazer esta conversão precisamos calcular o valor posicional de cada símbolo do número dado. Então usaremos a fórmula valor posicional:
V = S * B ^ P
Sabendo que o sistema binário possui base igual a dois, tomaremos o exemplo do número 100101:
Posição | 5 | 4 | 3 | 2 | 1 | 0 |
Símbolo | 1 | 0 | 0 | 1 | 0 | 1 |
Valor posicional |
V=1*2^5
V=1*32 v=32 |
V=0*0*2^4
V=0*16 V=0 |
V=0*2^3
V=0*8 V=0 |
V=1*2^2
V=1*4 V=4 |
V=0*2^2
V=0*2 V=0 |
V=1*2^0
V=1*1 V=1 |
Somando os valores dos dígitos (32 + 0 + 0 + 4 + 0 +1) teremos o total 37, que é a representação decimal do número binário 100101.
Este é um outro sistema numérico posicional bastante usado em informática, especialmente em programação assembly. Neste sistema dispomos de 16 símbolos conforme mostra a tabela abaixo:
Símbolo | Valor absoluto |
0 | 0 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
9 | 8 |
9 | 9 |
A | 10 |
B | 11 |
C | 12 |
D | 13 |
E | 14 |
F | 15 |
Sabendo-se que o sistema hexadecimal dispõe de 16 símbolos, concluímos que sua base é 16. Aplicando a mesma técnica que utilizamos na conversão de decimal para binário podemos converter qualquer número decimal para hexadecimal facilmente. Vejamos o exemplo da conversão do número decimal 23870 para hexadecimal:
Dividendo | Divisor | Quociente | Resto |
23870 | 16 | 1491 | 14 |
1491 | 16 | 93 | 3 |
93 | 16 | 5 | 13 |
5 | 16 | 0 | 5 |
Tomando-se os restos na ordem inversa e seus respectivos símbolos, temos:
Resto | 5 | 13 | 3 | 14 |
Símbolo | 5 | D | 3 | E |
Assim concluímos que o número decimal 23870 convertido para hexadecimal é: 5D3E.
Esta conversão também é bastante simples. Como o sistema hexadecimal também é posicional, basta aplicar a fórmula do valor posicional a cada símbolo e somar os resultados obtidos. Veja no exemplo abaixo como converter o número hexadecimal 5C3FA para decimal:
Posição | 4 | 3 | 2 | 1 | 0 |
Símbolo | 5 | C | 3 | F | A |
Valor absoluto | 5 | 12 | 3 | 15 | 10 |
Valor posicional |
V=5*16^4
V=5*65536 V=327680 |
V=12*16^3
V=12*4096 V=49152 |
V=3*16^2
V=3*256 V=768 |
V=15*16^1
V=15*16 V=240 |
V=10*16^0
V=10*1 V=10 |
Somando-se os valores posicionais encontrados, temos:
327680 + 49152 + 768 + 240 + 10 = 377850
Portanto o número hexadecimal 5C3FA convertido para decimal é: 377850.
O conteúdo desta página pode ajudar alguém? Compartilhe!