Sistemas de Notação
Ter 24 Out 2006 17:03 |
- Detalhes
- Categoria: Matemática Numaboa
- Atualização: Terça, 08 Junho 2010 20:04
- Autor: vovó Vicki
- Acessos: 40155
Os sistemas numéricos abordados são os dos Números Binários (ou números duais), Números Decimais e Números Hexadecimais. Estes três sistemas são os mais utilizados. Existem ainda os números octais e os BCD, porém de uso bastante restrito.
O sistema decimal
Valor Decimal | Lógica | Base | Casas |
1 | 100 (10 elevado a 0) | - | 1 |
10 | 101 (10 elevado a 1) | (10) | 2 |
100 | 102 (10 elevado a 2) | (10x10) | 3 |
1 000 | 103 (10 elevado a 3) | (10x10x10) | 4 |
10 000 | 104 (10 elevado a 4) | (10x10x10x10) | 5 |
Os números decimais são os que utilizamos no nosso dia a dia, motivo pelo qual são bastante familiares. Deci significa dez, que é a base do sistema decimal e que, não por acaso, corresponde aos dez dedos que temos nas mãos. Dificilmente alguém tem dificuldade de usar este sistema, mas... será que realmente sabemos qual é a verdadeira estrutura do sistema decimal?
Observe a tabela ao lado onde partimos do valor unitário. Multiplicando este valor 1 pela base do sistema (10), obtemos 10 e aumentamos uma casa. Se multiplicarmos o valor obtido novamente pela base do sistema (10x10), obtemos 100 e novamente uma casa é adicionada... e assim sucessivamente. Tomemos como exemplo o número 54. É muito fácil e quase institivo avaliar esta grandeza mas, como é que nosso cérebro "percebe" o número 54? E, num passo adiante, como é que o computador lida com este número? Precisamos desmembrá-lo para obter a respota. Por exemplo, vamos trabalhar com o número 8712:
Casa | Valor da Casa | Lógica | Cálculo | Valor Decimal |
4 | 8 | 8x103 | 8x1000 | 8 000 |
3 | 7 | 7x102 | 7x100 | 700 |
2 | 1 | 1x101 | 1x10 | 10 |
1 | 2 | 2x100 | 2x1 | 2 |
Soma | 8 712 |
O desmembramento do número 2061 seria logicamente 2x103 + 0x102 + 6x101 + 1x100. Note que para cada casa existe sempre um (e apenas um) dígito. Resumindo:
O sistema decimal possui dez dígitos diferentes (0 a 9)
Cada casa decimal pode conter apenas um dígito e
Cada casa significa um "pulo" de dez dígitos.
103 | 102 | 101 | 100 | |
0074 | 0 | 0 | 7 | 4 |
2061 | 2 | 0 | 6 | 1 |
???? | 2 | 0 | 13 | 5 |
Esta história de que cada casa pode ter apenas um dígito fica clara quando se faz uma adição com os números desmembrados. Por exemplo, a soma de 74 com 2061 dá o resultado mostrado na tabela à esquerda. O resultado é indefinido porque houve um "estouro" na segunda casa decimal, ou seja, ao invés de um dígito obtivemos dois. Para chegar ao resultado correto precisamos desmembrar a segunda casa e transferir o 1 para a terceira casa, ou seja, 13x101 resulta em 1x102 + 3x101. O valor da terceira casa passa a ser 1 e o da segunda 3. Assim se obtém o resultado correto, ou seja, 2135.
Antes de "descobrir" o zero, as notações dos números eram bastante precárias e os cálculos extremamente complicados. Os números romanos, por exemplo, não possuem o zero. Imagine fazer o mesmo cálculo acima, 2061 + 74, usando a notação dos números romanos. Se você ainda se lembra, a coisa fica assim: MMLXI + LXXIV = MMCXXXV. Coisa de louco, né não?
O princípio de ocupar cada casa com apenas um dígito e a possibilidade de indicar uma casa vazia através do uso do zero foi o princípio para criar os sistemas de notação e para efetuar cálculos matemáticos elaborados. Agradeça os hindus e os árabes pelo que hoje conhecemos como números arábicos! :thumbup:
Os princípios acima mencionados podem parecer básicos demais (bobinhos mesmo), porém são fundamentais para entender qualquer outro sistema de notação. O princípio é sempre o mesmo, o que muda é a base do sistema. Como já disse acima, a avaliação de um valor decimal é quase que instintiva, o que não acontece em sistemas de base diferente. Podes crer
O sistema binário
O prefixo "Bi" significa dois, indicando que o sistema binário é baseado em 2. Fazendo uma analogia com o sistema decimal,
O sistema binário possui dois dígitos diferentes (0 e 1)
Cada casa binária pode conter apenas um dígito e
Cada casa significa um "pulo" de dois dígitos.
A tabela abaixo mostra a estrutura do sistema binário:
Valor Binário | Lógica | Base | Casas | Valor Decimal |
1 | 20 (2 elevado a 0) | - | 1 | 1 |
10 | 21 (2 elevado a 1) | (2) | 2 | 2 |
100 | 22 (2 elevado a 2) | (2x2) | 3 | 4 |
1 000 | 23 (2 elevado a 3) | (2x2x2) | 4 | 8 |
10 000 | 24 (2 elevado a 4) | (2x2x2x2) | 5 | 16 |
Analise o último valor: 10000 no sistema binário corresponde a 16 no sistema decimal. Você seria capaz de dizer qual é o valor decimal de 110110 binário? Pois bem, instintivamente NÃO sabemos! Precisamos usar os mesmos princípios que aprendemos no sistema decimal, adequando-os para o sistema binário:
Casa | Valor da Casa | Lógica | Cálculo | Valor Decimal |
6 | 1 | 1x25 | 1x32 | 32 |
5 | 1 | 1x24 | 1x16 | 16 |
4 | 0 | 0x23 | 0x2 | 0 |
3 | 1 | 1x22 | 1x4 | 4 |
2 | 1 | 1x21 | 1x2 | 2 |
1 | 0 | 0x20 | 0x1 | 0 |
Soma | 54 |
Número Decimal dividido pela base 10 |
Resultado | Inteiro | Resto |
4711 / 10 = | 471.1 | 471 | 1 |
471 / 10 = | 47.1 | 47 | 1 |
47 / 10 = | 4.7 | 4 | 7 |
4 / 10 = | 0.4 | 0 | 4 |
Número Decimal dividido pela base 2 |
Resultado | Inteiro | Resto |
4711 / 2 = | 2355.5 | 2355 | 1 |
2355 / 2 = | 1177.5 | 1177 | 1 |
1177 / 2 = | 588.5 | 588 | 1 |
588 / 2 = | 294 | 294 | 0 |
294 / 2 = | 147 | 147 | 0 |
147 / 2 = | 73.5 | 73 | 1 |
73 / 2 = | 36.5 | 36 | 1 |
36 / 2 = | 18 | 18 | 0 |
18 / 2 = | 9 | 9 | 0 |
9 / 2 = | 4.5 | 4 | 1 |
4 / 2 = | 2 | 2 | 0 |
2 / 2 = | 1 | 1 | 0 |
1 / 2 = | 0.5 | 0 | 1 |
Usando os princípios que já conhecemos, fazer a conversão do sistema binário para o decimal não foi nenhum bicho de sete cabeças - e o contrário também não vai ser. Vamos tomar como exemplo o decimal 4711 e seguir o raciocínio da divisão pela base do sistema com determinação do resto da divisão. No sistema decimal, divida o número por 10 e anote o inteiro e o resto. Pegue o inteiro da primeira operação, divida novamente por 10 e guarde o inteiro e o resto... e assim sucessivamente. Com esta técnica obtém-se o resultado mostrado na tabela à esquerda.
Observe que os restos formam o número original na ordem inversa (4711 é o número original, 1174 está na ordem inversa). Com estas operações transformamos um número decimal em seu correspondente ... decimal! Não tem vantagem nenhuma, porém o mesmíssimo raciocínio vale para transformar um decimal no seu correspondente binário.
Repita o processo usando a base 2 e, depois dos cálculos, basta inverter os restos para obter a notação binária do número decimal, ou seja, 4711 decimal é igual a 1001001100111 binário (veja na tabela ao lado). Como o número de algarismos no sistema binário é muito menor do que no sistema decimal, para um decimal de 4 dígitos precisamos de 13 dígitos binários.
O sistema hexadecimal
Depois das explicações anteriores não há sistema que possa nos assustar Vamos lá: "hexa" significa seis e "deci" já sabemos que é dez. Portanto,
O sistema hexadecimal possui 16 dígitos diferentes,
Cada casa hexadecimal pode conter apenas um dígito e
Cada casa significa um "pulo" de dezesseis dígitos.
Analisando a estrutura do sistema hexadecimal temos:
Valor Hexadecimal | Lógica | Base | Casas | Valor Decimal |
1 | 160 (16 elevado a 0) | - | 1 | 1 |
10 | 161 (16 elevado a 1) | (16) | 2 | 16 |
100 | 162 (16 elevado a 2) | (16x16) | 3 | 256 |
1 000 | 163 (16 elevado a 3) | (16x16x16) | 4 | 4 096 |
10 000 | 164 (16 elevado a 4) | (16x16x16x16) | 5 | 65 536 |
Decimal | HEXA | Binário |
0 | 0 | 0000 |
1 | 1 | 0001 |
2 | 2 | 0010 |
3 | 3 | 0011 |
4 | 4 | 0100 |
5 | 5 | 0101 |
6 | 6 | 0110 |
7 | 7 | 0111 |
8 | 8 | 1000 |
9 | 9 | 1001 |
10 | A | 1010 |
11 | B | 1011 |
12 | C | 1100 |
13 | D | 1101 |
14 | E | 1110 |
15 | F | 1111 |
Tudo bem, os algarismos arábicos são apenas 10. Para montar o sistema hexadecimal faltam 6 símbolos que representem os dígitos do 10° ao 16°. Ao invés de "bolar" dígitos novos, optou-se pelo uso das 6 primeiras letras do alfabeto, portanto, de A a F. "A" é o décimo dígito, "B" o décimo primeiro, e assim por diante.
Casa | Valor da Casa | Lógica | Cálculo | Valor Decimal |
5 | A | 10x164 | 10x65 536 | 655 360 |
4 | B | 11x163 | 11x4 096 | 45 056 |
3 | A | 10x162 | 10x256 | 2 560 |
2 | F | 15x161 | 15x16 | 240 |
1 | A | 10x160 | 10x1 | 10 |
Soma | 703 226 |
De posse destes elementos, que tal calcular o valor decimal de ABAFA (do número hexadecimal, não da palavra )? Veja na tabela acima que o método é sempre o mesmo e que transformar hexadecimal em decimal é tranquilo. Vamos ver como fica a coisa se quisermos transformar um valor decimal em hexa. Usaremos o método da divisão por 16 (porque a base é 16) e como exemplo o já conhecido valor 4711. Logo na primeira divisão obtemos o seguinte: 4711 / 16 = 294.4375. E como fica a história do resto? Basta passá-lo para a base 16. Observe na tabela abaixo que 4711 decimal corresponde a 1267 hexadecimal:
Número Decimal dividido pela base 16 |
Resultado | Inteiro | Resto |
4711 / 16 = | 294.4375 | 294 | 0.4375x16 = 7 |
294 / 16 = | 18.375 | 18 | 0.375x16 = 6 |
18 / 16 = | 1.125 | 1 | 0.125x16 = 2 |
1 / 16 = | 0.0625 | 0 | 0.0625x16 = 1 |
Mas, e se quisermos transformar uma notação hexadecimal em binária? Parece complicado mas, por incrível que pareça, é até mais fácil. Para cada dígito hexadecimal correspondem sempre 4 dígitos binários. Se você ainda se lembra, 4711 decimal corresponde a 1001001100111 binário e a 1267 hexadecimal. Separando o valor binário em blocos de 4 dígitos temos 0001.0010.0110.0111, cada bloco correspondendo a um dígito do valor hexa: 0001 (binário) = 1 (hexa), 0010 (binário) = 2 (hexa), 0110 (binário) = 6 (hexa) e 0111 (binário) = 7 (hexa). Basta conferir na tabela de dígitos hexa / decimal / binário.
O sistema octal
O sistema octal é do tempo dos processadores de 8 bits. Hoje em dia este tipo de notação praticamente não é usado. A título de curiosidade (e de treinamento), faça as conversões aplicando os princípios já explicados.
BCD
BCD vem de "binary-coded decimal" e é uma notação binária na qual cada dígito decimal é representado pelo seu numeral binário. Provavelmente você nunca ouviu falar deste tipo de notação porque é utilizada em setores muito especializados como eletrônica de monitores de cristal líquido (LCD), máquinas CNC, etc, quando há a necessidade de usar o equivalente binário de um dígito decimal. Por este motivo, a notação BCD também só possui 10 "padrões" de notação.
Um byte tem 8 bits (ou 8 posições) divididos em 2 nibbles (de 4 posições). A notação BCD, portanto, ocupa apenas um niblle de cada byte, o outro é "desperdiçado". Por exemplo, o decimal 2 em BCD é 0000 0010. Para eliminar este desperdício, criou-se o padrão "Packed BCD", onde os dois nibbles são ocupados. Veja o exemplo com o decimal 5319 em BCD e Packed BCD:
Notação | Milhar | Centena | Dezena | Unidade | Na memória |
Decimal | 5 | 3 | 1 | 9 | |
BCD | 0000 0101 | 0000 0011 | 0000 0001 | 0000 1001 | 05 03 01 09 |
Packed BCD | 0101 | 0011 | 0001 | 1001 | 53 19 |
Observações
Na Caixa de Ferramentas da Escolinha da Aldeia existe um conversor de bases numéricas * prontinho para ser usado online. Divirtam-se.