Vous êtes sur la page 1sur 11

O Sistema Binrio Um guia maldito bem claro a um conceito bastante confuso por Christine R.

Wright com alguma ajuda de Samuel A. Rebelsky. ndice analtico Conceitos bsicos por trs do Sistema Binrio Adio Binria Multiplicao binria Diviso binria Converso de Decimal para Binrio Negao do Sistema Binrio Conceitos bsicos por trs do Sistema Binrio Para entender os nmeros binrios, comear por recordar em matemtica na escola. Quando ns aprendemos sobre os nmeros, ns fomos ensinados que, no sistema decimal, as coisas so organizadas em colunas: H|T|O 1|9|3 de tal forma que "H" a coluna das centenas, "T" a coluna das dezenas, e "O" a coluna mais. Portanto, o nmero "193" de 1 centenas mais de 9 dezenas mais 3um. Anos mais tarde, descobrimos que a coluna entes significava 10 ^ 0, a coluna dezenas significava 10 ^ 1, a coluna centenas 10 ^ 2 e assim por diante, de tal modo que 10 ^ 2 | 10 ^ 1 | 10 ^ 0 1|9|3 o nmero 193 realmente {(1 * 10 ^ 2) + (9 * 10 ^ 1) + (3 * 10 ^ 0)}. Como voc sabe, o sistema decimal usa o 0-9 dgitos para representar nmeros.Se quisermos colocar um nmero maior, na coluna 10 ^ n (por exemplo, 10), teramos para multiplicar 10 * 10 ^ n, o que daria 10 ^ (n +1), e ser transportados de uma coluna para a esquerda. Por exemplo, colocando 10 no 10 ^ 0 coluna impossvel, de modo que colocar um 1 na coluna 10 ^ 1, e um 0 no 10 ^ 0 de coluna, utilizando assim duas colunas. Doze seria de 12 * 10 ^ 0 ou 10 ^ 0 (10 2), ou 10 ^ 1 2 * 10 ^ 0, o que tambm utiliza uma coluna adicional para a esquerda (12). O sistema binrio funciona sob os mesmos princpios como o sistema decimal, ela s funciona na base 2, em vez de base 10. Em outras palavras, em vez de colunas sendo

10 ^ 2 | 10 ^ 1 | 10 ^ 0 eles so 2^2|2^1|2^0 Em vez de usar o 0-9 dgitos, s usamos 0-1 (novamente, se usamos qualquer coisa maior do que seria como se multiplicando 2 * 2 ^ n e obter 2 ^ n +1, que no caberia no 2 ^ n coluna. Portanto, seria mudar-lhe uma coluna esquerda. Por exemplo, "3"

em binrio no pode ser colocado em uma coluna. A primeira coluna enchemos a coluna mais direita, que 2 ^ 0, ou 1. Desde 3> 1, precisamos usar uma coluna extra para a esquerda, e indic-lo como "11" em binrio (1 * 2 ^ 1) + (1 * 2 ^ 0). Exemplos: Qual seria o nmero binrio 1011 ser em notao decimal?

Clique aqui para ver a resposta Tente converter esses nmeros de binrio para decimal: 10 111 10101 11110 Lembre-se: 2^4|2^3|2^2|2^1|2^0 |||1|0 ||1|1|1 1|0|1|0|1 1|1|1|1|0

Clique aqui para ver a resposta Voltar ao ndice Adio Binria Considere a adio de nmeros decimais: 23 48 ___ Comeamos pela adio de 3 +8 = 11. Uma vez que 11 maior do que 10, um um colocado no 10 da coluna (transportados), e um 1 gravado na coluna a um de soma. Em seguida, adiciona {(2 4) 1} (a uma a partir do transporte) = 7, que colocado no 10 da coluna da soma. Assim, a resposta 71. A adio binria funciona com base no mesmo princpio, mas os numerais so diferentes. Comece com um bit-adio binria: 001 +0 +1 +0 _________ 011

1 +1 nos leva para a prxima coluna. Na forma decimal, 1 +1 = 2. No sistema binrio, qualquer dgito superior a 1 nos coloca uma coluna para a esquerda (como faria 10 em notao decimal). O nmero decimal "2" escrito em notao binria como "10" (1 * 2 ^ 1) + (0 * 2 ^ 0). Registre a 0 em uma das colunas, e transporta o 1 coluna de pares para obter uma resposta de "10". Na nossa notao vertical, 1 1 ___ 10 O processo o mesmo para os nmeros de mltiplos bits binrios: 1010 1111 ______ Passo um: Coluna 2 ^ 0: 0 +1 = 1. Registre a 1. Resultado temporrio: 1; Carry: 0 Passo dois: Coluna 2 ^ 1: 1 1 = 10. Registre a 0, transporta o 1. Resultado temporrio: 01; Carry: 1 Passo trs: Coluna 2 ^ 2: 1 +0 = 1 Adicione 1 de carry: 1 +1 = 10. Registre a 0, transporta o 1. Resultado temporrio: 001; Carry: 1 Passo quatro: Coluna 2 ^ 3: 1 1 = 10. Adicione 1 de transporte: 10 +1 = 11. Registre a 11. Resultado final: 11001 Como alternativa: 11 (transportar) 1010 1111 ______ 11001 Lembre-se sempre 0 +0 = 0 1 +0 = 1 1 +1 = 10 Tente alguns exemplos de adio binria: 111 101 111 +110 +111 +111 ________________

Clique aqui para ver a resposta Voltar ao ndice Multiplicao binria Multiplicao no sistema binrio funciona da mesma maneira como no sistema decimal: 1*1=1 1*0=0 0*1=0 101 * 11 ____ 101 1010 _____ 1111 Note-se que multiplicando por dois extremamente fcil. Para multiplicar por dois, basta adicionar um 0 no final. Voltar ao ndice Diviso binria Siga as mesmas regras que na diviso decimal. Por razes de simplicidade, deitar fora o restante. Por exemplo: 111011/11

10.011 r 10 _______ 11) 111011 -11 ______ 101 -11 ______ 101 11 ______ 10 Voltar ao ndice Decimal para Binrio

Convertendo de decimal para a notao binria um pouco mais difcil conceitualmente, mas pode ser feito facilmente quando voc sabe como atravs do uso de algoritmos. Comece a pensar em alguns exemplos. Podemos facilmente ver que o nmero 3 = 2 +1. e que isso equivalente a (1 * 2 ^ 1) + (1 * 2 ^ 0). Isto traduzse colocar um "1" na 2 ^ 1 coluna e um "1" na coluna 2 ^ 0, para obter "11". Quase como intuitivo o nmero 5: obviamente 4 1, que o mesmo que dizer [(2 * 2) um], ou 2 ^ 2 1. Isto pode tambm ser escrito como [(1 * 2 ^ 2) + (1 * 2 ^ 0)]. Olhando para este em colunas, 2^2|2^1|2^0 101 ou 101. O que estamos fazendo aqui encontrar o maior poder de dois dentro do nmero (2 ^ 2 = 4 a maior potncia de 2 em 5), subtraindo-se que a partir do nmero (5-4 = 1), e encontrar a maior potncia de 2 no restante (2 ^ 0 = 1 a maior potncia de 2 em 1). Ento, basta colocar isso em colunas. Este processo continua at que tenhamos um saldo de 0. Vamos dar uma olhada em como ele funciona. Sabemos que: 2^0=1 2^1=2 2^2=4 2^3=8 2 ^ 4 = 16 2 ^ 5 = 32 2 ^ 6 = 64 2 ^ 7 = 128 e assim por diante. Para converter o nmero decimal 75 em binrio, gostaramos de encontrar a maior potncia de 2 menos de 75, que 64. Assim, gostaramos de colocar um 1 na coluna 2 ^ 6, e subtraia 64 de 75, dando-nos 11. A maior potncia de 2 em 11 de 8, ou 2 ^ 3. Coloque 1 na coluna 2 ^ 3, e 0 em 2 ^ 4 e 2 ^ 5. Subtraia 8 de 11 a obter 3. Coloque 1 na coluna 2 ^ 1, 0 em 2 ^ 2, e subtrair 2 a partir de 3. Ns ficamos com 1, que vai em 2 ^ 0, e subtramos um para obter zero. Assim, o nosso nmero 1001011. Fazendo este algoritmo um pouco mais formal nos d: Seja D = nmero que deseja converter de decimal para binrio Repita at que D = 0 uma. Encontre o maior poder de dois em D. Que esta p igual b. Coloque uma 1 em binrio coluna P. c. Subtrair de P D. Coloque zeros em todas as colunas, que no tm entes. Este algoritmo um pouco estranho. Particularmente a etapa 3 ", preenchendo os zeros." Portanto, devemos reescrev-lo de tal forma que damos valor a determinar de cada coluna individualmente, colocando em 0 e 1 como vamos ns: Seja D = o nmero que deseja converter de decimal para binrio Encontrar P, de tal modo que 2 ^ P a maior potncia de dois menor do que D. Repita at que P <0

Se 2 ^ P <= D ento colocar 1 em P coluna subtrair 2 ^ P de D Outro coloque 0 em P coluna Fim se Subtraia 1 do P Agora que temos um algoritmo, podemos us-lo para converter nmeros de decimal para binrio relativamente indolor. Vamos tentar o nmero D = 55. O primeiro passo o de encontrar p Sabemos que 2 ^ 4 = 16, 2 ^ 5 = 32 e 2 ^ 6 = 64. Portanto, P = 5. 2 ^ 5 <= 55, ento colocamos um 1 na coluna 2 ^ 5: 1 -----. Subtraindo 55-32 nos deixa com 23. Subtraindo 1 a partir de P nos d 4. Aps o passo 3 novamente, 2 ^ 4 <= 23, ento colocamos um 1 na coluna 2 ^ 4: 11 ---. Em seguida, subtrair 16 a partir de 23, para obter 7. Subtrair 1 a partir de P nos d 3. 2 ^ 3> 7, ento colocamos um 0 no 2 ^ 3 coluna: 110 --Em seguida, subtraia 1 de P, o que nos d 2. 2 ^ 2 <= 7, ento colocamos um 1 na coluna 2 ^ 2: 1101 Subtraia 4 de 7 para obter 3. Subtraia 1 do P para obter o 1. 2 ^ 1 <= 3, ento colocamos um 1 na 2 ^ 1 coluna: 11011 Subtraia 2 de 3 para obter 1. Subtraia 1 do P para obter 0. 2 ^ 0 <= 1, ento colocamos um 1 na coluna 2 ^ 0: 110111 Subtrair 1 a partir de 1 para obter 0. Subtrair 1 a partir de P para obter -1. P agora menor que zero, ento paramos. Outro algoritmo para converter decimal para binrio No entanto, isto no a nica abordagem possvel. Podemos comear no lado direito, em vez de a esquerda. Todos os nmeros binrios so na forma a [n] * 2 ^ n + a [n-1] * 2 ^ (n-1) + ... + a [1] * 2 ^ 1 + a [0] * 2 ^ 0 onde cada um [i] ou um. 1 ou um 0 (os dgitos apenas possveis para o sistema binrio) A nica forma de um nmero pode ser estranha , se tiver um 1 na coluna 2 ^ 0, porque todas as potncias de dois maior do que 0 so ainda nmeros (2, 4, 8, 16 ...). Isso nos d o dgito mais direita como ponto de partida. Agora precisamos fazer os dgitos restantes. Uma idia "deslocar" deles.Tambm fcil ver que multiplicar e dividir por 2 turnos tudo por uma coluna: duas em binrio 10, ou (1 * 2 ^ 1). Dividindo (1 * 2 ^ 1) por 2 d-nos (1 * 2 ^ 0), ou apenas uma 1 em binrio. Da mesma forma, multiplicando por 2 turnos em outra direo: (1 * 2 ^ 1) * 2 = (1 * 2 ^ 2) ou 10 em binrio. Portanto {A [n] * 2 ^ n + a [n-1] * 2 ^ (n-1) + ... + A [1] * 2 ^ 1 + a [0] * 2 ^ 0} / 2 igual a [n] * 2 ^ (n-1) + a [n-1] * 2 ^ (n-2) + ... + A [1] 2 ^ 0

Vejamos como isso pode nos ajudar a converter de decimal para binrio. Pegue o nmero 163. Sabemos que desde que estranho, deve haver um 1 na coluna 2 ^ 0 (a [0] = 1). Sabemos tambm que ele igual a 162 um. Se colocarmos a 1 na coluna 2 ^ 0, temos 162 esquerda, e tem que decidir como traduzir os dgitos restantes. Dois da coluna: Dividindo 162 por 2 d 81. O nmero 81 em binrio tambm teria um 1 na coluna 2 ^ 0. Uma vez que dividimos o nmero por dois, que "tirou" uma potncia de dois. Do mesmo modo, a instruo um [n-1] * 2 ^ (n-1) + um [N-2] * 2 ^ (n-2) + ... + A [1] * 2 ^ 0 tem uma potncia de dois removido. Nossa 2 "nova" coluna 0 ^ agora contm a1. Aprendemos anteriormente que existe um 1 na coluna 2 ^ 0 se o nmero mpar. Desde 81 mpar, a [1] = 1. Praticamente, podemos simplesmente manter um "total de execuo", que agora est em 11 (a [1] = 1 e a [0] = 1). Observe tambm que a1 essencialmente "remultiplied" por dois apenas, colocando-o na frente de um [0], ento ele automaticamente encaixa a coluna correta. Coluna Four: Agora podemos subtrair 1 de 81 para ver o restante ainda deve colocar (80). Dividindo 80 por 2 d 40. Portanto, deve haver um 0 na coluna 4 do, (porque o que estamos realmente colocando uma coluna de 2 ^ 0, eo nmero no estranho). Oito da coluna: Podemos dividir por dois novamente para obter 20. Isto mesmo, ento colocamos um 0 na coluna 8 da. Nosso execuo total agora est em um [3] = 0, a [2] = 0, a [1] = 1, e a [0] = 1. Ns podemos continuar desta forma at que no haja restante para colocar. Vamos formalizar este algoritmo: 1. Seja D = o nmero que deseja converter de decimal para binrio. 2. Repita at que D = 0: a) Se D mpar, colocar "1" na coluna da esquerda aberta, e subtraia 1 do D. b) Se D mesmo, coloque "0" na coluna da esquerda aberta. c) Divida D por 2. Fim Repetio Para o nmero 163, que funciona como se segue: 1. Seja D = 163 2. b) D estranho, coloque um 1 na coluna 2 ^ 0. Subtraia 1 do D para obter 162. c) Divida D = 162 por 2. Resultado temporrio: 01 Nova D = 81 D no igual a 0, para que repita o passo 2. 2. b) D estranho, coloque um 1 na coluna 2 ^ 1. Subtraia 1 do D para obter 80. c) Divida D = 80 por 2. Resultado temporrio: 11 Nova D = 40 D no igual a 0, para que repita o passo 2. 2. b) D ainda, colocar um 0 na coluna 2 ^ 2. c) Divida D por 2.

Resultado temporrio: 011 New D = 20 2. b) D ainda, colocar um 0 no 2 ^ coluna 3. c) Divida D por 2. Resultado temporrio: 0011 New D = 10 2. b) D mesmo, coloque um 0 na coluna 2 ^ 4. c) Divida D por 2. Resultado temporrio: 00011 Novo D = 5 2. a) D estranho, coloque um 1 na coluna 2 ^ 5. Subtraia 1 do D para obter 4. c) Divida D por 2. Resultado temporrio: 100011 Nova D = 2 2. b) D ainda, colocar um 0 na coluna 2 ^ 6. c) Divida D por 2. Resultado temporrio: 0100011 Nova D = 1 2. a) D mpar, colocar um 1 na coluna 27. Subtraia 1 do D para obter D = 0. c) Divida D por 2. Resultado temporrio: 10100011 Nova D = 0 D = 0, ento estamos a fazer, eo nmero decimal 163 equivalente ao nmero binrio 10100011. Uma vez que ns j sabamos como converter de binrio para decimal, podemos facilmente verificar nosso resultado. 10100011 = (1 * 2 ^ 0) + (1 * 2 ^ 1) + (1 * 2 ^ 5) + (1 * 2 ^ 7) = 1 +2 +32 +128 = 163. Voltar ao ndice Negao do Sistema Binrio Magnitude assinado Um complemento Complemento de dois O excesso de 2 ^ (m-1) Estas tcnicas funcionam bem para inteiros no negativos, mas como podemos indicar nmeros negativos no sistema binrio? Antes de investigar os nmeros negativos, notamos que o computador usa um nmero fixo de "bits" ou dgitos binrios. Um nmero de 8 bits de 8 dgitos.Para esta seo, vamos trabalhar com 8 bits. Magnitude Assinado: A maneira mais simples para indicar negao assinado magnitude. Em magnitude assinado, o bit mais esquerda no realmente parte do nmero, mas apenas o equivalente a um sinal + / -. "0" indica que o nmero positivo, "1" indica negativo. Em

8 bits, 00001100 seria 12 (decomp-lo em (1 * 2 ^ 3) + (1 * 2 ^ 2)). Para indicar -12, teramos simplesmente colocar um "1" ao invs de um "0" como o primeiro bit: 10001100. Um complemento: Em complemento de um, nmeros positivos so representados como habitual em binrio regular. No entanto, os nmeros negativos so representados de forma diferente. Para negar um nmero, substituir todos os zeros com aqueles, e aquelas com zeros - inverter os bits. Assim, 12 seria 00.001.100, e -12 seria 11.110.011. Tal como na magnitude assinado, o bit mais esquerda indica o sinal (1 for negativo, 0 positivo). Para calcular o valor de um nmero negativo, inverter os bits e traduzir como antes. Complemento de dois: Comece com o nmero em um complemento. Adicione 1 se o nmero negativo. Doze seria representada como 00001100, e -12 como 11.110.100.Para verificar isso, vamos subtrair 1 de 11110100, para obter 11110011. Se jogarmos os bits, teremos 00001100, ou 12 em decimal. Nesta notao, "m" indica o nmero total de bits. Para ns (trabalhando com 8 bits), seria excesso 2 ^ 7. Para representar um nmero (positivo ou negativo) em 2 excesso ^ 7, comece tomando o nmero na representao binria regular. Em seguida, adicione 2 ^ 7 (= 128) a esse nmero. Por exemplo, seria 7 128 + 7 = 135, ou 2 ^ 7 2 ^ 2 ^ 2 1 2 ^ 0, e, em binrio, 10000111. Ns representaria -7 como 128-7 = 121, e, em binrio, 01111001. Nota: A menos que voc sabe que a representao tem sido usado, voc no pode descobrir o valor de um nmero. Um nmero em excesso 2 ^ (m-1) o mesmo que aquele nmero em complemento de dois, com o bit mais esquerda invertida. Para ver as vantagens e desvantagens de cada mtodo, vamos tentar trabalhar com eles. Utilizando o algoritmo de regular para adio binrio, adicionar (5 12), (-5 12), (-12 + 5), e (12 + -12) em cada sistema. Em seguida, converter de volta para nmeros decimais.

Clique aqui para ver as respostas Voltar ao ndice Respostas Qual seria o nmero binrio 1011 ser em notao decimal? 1011 = (1 * 2 ^ 3) + (0 * 2 ^ 2) + (1 * 2 ^ 1) + (1 * 2 ^ 0)

= (1 * 8) + (0 * 4) + (1 * 2) + (1 * 1) = 11 (em notao decimal) Volte para a questo Tente converter esses nmeros de binrio para decimal: 10 = (1 * 2 ^ 1) + (0 * 2 ^ 0) = 2 +0 = 2 111 = (1 * 2 ^ 2) + (1 * 2 ^ 1) + (1 * 2 ^ 0) = 4 +2 +1 = 7 10101 = (1 * 2 ^ 4) + (0 * 2 ^ 3) + (1 * 2 ^ 2) + (0 * 2 ^ 1) + (1 * 2 ^ 0) = 16 +0 +4 +0 + 1 = 21 11110 = (1 * 2 ^ 4) + (1 * 2 ^ 3) + (1 * 2 ^ 2) + (1 * 2 ^ 1) + (0 * 2 ^ 0) = 16 +8 +4 +2 + 0 = 30 Volte para a questo Tente alguns exemplos de adio binria: 11 111 111 111 +110 +110 +110 _________________ 1 01 1101 1 11 1 101 101 101 +111 +111 +111 ______________ 0 00 1100 111 111 111 111 +111 +111 +111 _______________ 0 10 1110 Clique aqui para voltar questo Utilizando o algoritmo de regular para adio binrio, adicionar (5 12), (-5 12), (-12 + 5), e (12 + -12) em cada sistema. Em seguida, converter de volta para nmeros decimais. Magnitude Assinado: 5 +12 -5 +12 -12 + -5 12 + -12 00000101 10000101 10001100 00001100 00001100 00001100 10000101 10001100 ___________________________________ 00010001 10010001 00010000 10011000 17 -17 16 -24 Um 'Complemento:

00000101 11111010 11110011 00001100 00001100 00001100 11111010 11110011 _________________________________ 00010001 00000110 11101101 11111111 17 6 -18 0 Complemento de dois: 00000101 11111011 11110100 00001100 00001100 00001100 11111011 11110100 ________________________________ 00010001 00000111 11101111 00000000 17 7 -17 0 Magnitude Assinado: 10000101 01111011 01110100 00001100 10001100 10001100 01111011 01110100 ________________________________ 00010001 00000111 11101111 01111100 109 119 111 124 Clique aqui para voltar questo

Vous aimerez peut-être aussi