Sistemas Numéricos 1 de 3 http://www.icea.gov.br/ead/anexo/21201.htm Módulo III - Sistemas Númericos e Códigos pag.2/4 SISTEMA NUMÉRICO BINÁRIO O sistema numérico mais simples que usa notação posicional é o sistema numérico binário. Como o próprio nome diz, um sistema binário contém apenas dois elementos ou estados. Num sistema numérico isto é expresso como uma base dois, usando os dígitos 0 e 1. Esses dois dígitos têm o mesmo valor básico de 0 e 1 do sistema numérico decimal. Devido a sua simplicidade, microprocessadores usam o sistema binário de numeração para manipular dados. Dados binários são representados por dígitos binários chamados "bits". O termo "bit" é derivado da contração de "binary digit". Microprocessadores operam com grupos de "bits" os quais são chamados de palavras.O número binário 1 1 1 0 1 1 0 1 contém oito "bits". Notação Posicional Tal qual no sistema numérico decimal, cada posição de "bit" (dígito) de um número binário tem um peso particular o qual determina a magnitude daquele número. O peso de cada posição é determinado por alguma potência da base do sistema numérico. Para calcular o valor total do número, considere os "bits" específicos e os pesos de suas posições (a tabela abaixo mostra uma lista condensada das potências de 2). Por exemplo, o número binário 110101 pode ser escrito com notação posicional como segue: (1x25)+(1x24)+(0x23)+(1x22)+(0x21)+(1x20) Potências de 2 = Para determinar o valor decimal ao número binário 1101012, multiplique cada "bit" por seu peso posicional e some os resultados. = (1x32)+(1x16)+(0x8)+(1x4)+(0x2)+(1x1) = 32 + 16 + 0 + 4 + 0 + 1 = 5310 = = = 20 110 21 210 22 410 23 810 24 1610 = = = = = 25 3210 26 6410 27 12810 28 25610 29 51210 Números Fracionários (Potências Negativas de 2) Números binários fracionários são expressos como potências negativas de dois. A tabela abaixo fornece uma lista condensada das potências negativas de dois. Na notação posicional, o número binário 0.11012 pode ser expresso como se segue:(1x2-1) + (1x2-2) + (0x2-3) + (1x2-4) Potências Negativas de 2 Para determinar o valor decimal do número binário 0·11012, multiplique cada "bit" por seu peso posicional e some os resultados. No sistema numérico binário, o ponto base é chamado de ponto binário. 2-1 = 1/2 0,510 = 1/4 0,2510 2-3 = 1/8 0,12510 -2 2 Conversão entre os Sistemas Numéricos Binário e Decimal No trabalho com microprocessadores, geralmente será necessário determinar o valor decimal de números binários. Além disso, também será necessário converter um específico número decimal no seu equivalente binário. Os próximas tópicos trataremos de informações que mostram como tais conversões são feitas. Conversão Binária para Decimal; Conversão Decimal para Binária; e Conversão Binária para Decimal (fração). Conversão Binária para Decimal Para converter um número binário no seu equivalente decimal, some todos os pesos das posições no número onde os l's binários aparecem. Os pesos das posições inteiras e fracionárias são indicadas a seguir. INTEIRAS FRACIONÁRIAS 27 26 25 24 23 22 21 20 128 64 32 16 8 4 2 1 ponto binário . 2-1 .5 2-2 .25 2-3 .125 Exemplo 1: Converter o número binário 1010 no seu equivalente decimal. Desde que nenhum ponto binário é mostrado, o número é suposto ser um número inteiro, onde o ponto binário está à direita do número. O "bit" mais a direita, chamado o bit menos significativo ou (LSB) tem o menor peso inteiro de 20 = 1. O "bit" mais a esquerda é o bit mais significativo ou (MSB) pois ele comporta o maior peso na determinação do valor do número neste caso, ele tem um peso de 23 = 8. Para avaliar o número, some os pesos das posições onde os l's binários aparecem. Neste exemplo, l's Notação Posicional 27-03-2008 08:36 Sistemas Numéricos 2 de 3 http://www.icea.gov.br/ead/anexo/21201.htm Número binário aparecem nas posições 23 e 21. O equivalente decimal é dez. 1 0 3 2 1 0 1 Pesos posicionais 2 2 2 20 Equivalente decimal 8+ 0+ 2+ 0= 1010 Exemplo 2: Para ressaltar este processo, converter o número binário 101101.11 2 no seu equivalente decimal: Número binário 1 0 Notação Posicional 1 1 0 1 . 1 1 Pesos posicionais 25 24 23 22 21 20 . 2-1 2-2 Equivalente decimal 32+ 0+ 8+ 4+ 0+ 1 . 0,5+ 0,25= 45,7510 Conversão Decimal para Binária Um número inteiro decimal pode ser convertido para uma base diferente através de divisões sucessivas pela base desejada. Para converter um número inteiro decimal no seu equivalente binário, divida o número por 2 sucessivamente e anote os restos. quando se divide por 2, o resto será sempre 1 ou 0. Os restos formam o número binário equivalente. Como um exemplo, o número decimal 25 é convertido no seu equivalente binário. Divisões 25/2 = 12 12/2 = 6 6/2 = 3 3/2 = 1 1/2 = 0 Resto 1 0 0 1 1 Divida o número decimal por dois e anote o resto. Então LSB divida o quociente por dois e novamente anote o resto. Continue este processo de divisão até resultar zero. Então pegue os restos começando pelo último ou o "bit" mais significativo (MSB) e continue até o primeiro ou "bit" menos significativo (LSB). O número 110012 = 2510. MSB Observe que os restos são coletados em ordem reversa. Ou seja, o primeiro resto torna-se o "bit" menos significativo, enquanto o último resto torna-se o "bit" mais significativo. Para ressaltar, o número 175 é convertido no seu equivalente binário. O processo de divisão continua até que seja atingido 0 como quociente. Os restos são coletados para produzir o número 101011112 = 17510. Divisões 175/2 = 87 87/2 = 43 43/2 = 21 21/2 = 10 10/2 = 5 5/2 = 2 2/2 = 1 Resto 1 1 1 1 0 1 0 1/2 = 0 1 LSB MSB Nota: não tente usar calculadora para realizar esta conversão. Ela poderia apenas fornecer-lhe resultados confusos. Conversão Decimal para Binário de um número Fracionário Para converter uma fração decimal para uma base diferente, multiplique a fração sucessivamente pela base desejada e guarde as partes inteiras produzidas pela multiplicação. Para converter a fração decimal 0,3125 na sua equivalente binária multiplique repetidamente por dois. Estas multiplicações irão resultar em números com 1 ou 0 na posição das unidades (a posição a esquerda do ponto decimal). Pela gravação dos valores da posição das unidades, pode-se constituir a fração binária equivalente. multiplicações 0,3125 X 2 = 0,625 = 0,625 0,625 X 2 = 1,250 = 0,250 0,250 X 2 = 0,500 = 0,500 inteiro 0 MSB 1 0 0,500 X 2 = 1,000 = 0 1 LSB Quando 0,3125 é multiplicado por 2, a parte inteira é 0. Isto resulta o "bit" mais significativo (MSB) da fração binária equivalente. Então 0,625 é multiplicado por 2 e o produto é 1,25, a parte inteira é 1. Quando a parte inteira for 1, ela é subtraída do produto e o 1 é guardado. Portanto, apenas 0,25 é multiplicado por 2 no próximo processo de multiplicação. O método continua até que resulte um número sem parte fracionária. É importante observar que não se pode obter sempre 0 (zero) quando se multiplica por 2. Portanto, deve-se apenas continuar o processo de conversão até a precisão que se deseja. Colete os números inteiros começando pelo ponto binário com o MSB e continuando até o LSB. Esta é a mesma ordem na qual as partes inteiras são produzidas. O número 0·01012 = 0,312510. Para ilustrar este processo, a fração decimal 0,90625 é convertida no seu equivalente binário. O processo de multiplicação continua até que zero ou a precisão desejada é obtida. Os inteiros são então coletadas começando com o MSB no ponto binário e seguindo até o LSB. O número 0.111012 = 0,9062510. multiplicações 0,90625 X 2 = 1,8125 0,81250 X 2 = 1,6250 0,62500 X 2 = 1,2500 0,25000 X 2 = 0,5000 0,50000 X 2 = 1,0000 = = = = = 0,8125 0,6250 0,2500 0,5000 1 inteiro 1 MSB 1 1 0 1 LSB 27-03-2008 08:36 Sistemas Numéricos 3 de 3 http://www.icea.gov.br/ead/anexo/21201.htm Se o número decimal apresenta uma parte inteira e uma fracionária, deve-se separar as partes inteiras e fracionárias usando o ponto decimal como ponto de separação. Então realiza-se a conversão apropriada em cada parte. Após se converter à parte inteira e a parte fracionária, deve-se juntá-las. Por exemplo, o número decimal 14,375 é convertido no seu equivalente binário. 14,375 = 1410 + 0,37510 Operações 14 ÷ 2 = 7 7÷2=3 resto 0 LSB 1 3÷2=1 1 1÷2=0 0,375 X 2 = 0,750 0,750 X 2 = 1,500 1 MSB inteiro 0 MSB 1 0,500 X 2 = 1,000 1 LSB Resultado geral ICEA/EAD © 2005 resultados parciais 1410 = 11102 0,37510 = 0,0112 14,37510 = 1110.0112 Hexadecima l 27-03-2008 08:36