Baixe o app para aproveitar ainda mais
Prévia do material em texto
Arquitetura de Computadores – Aritmética Binária 1. Representação binária de números com sinal e sem sinal Existem algumas maneiras de se presentar números positivos e negativos em um sistema computacional. Neste texto, será abordado três dessas maneiras: sinal e magnitude, complemento de 1 e complemento de 2. 1.1. Sinal e magnitude Este método utiliza de um bit reservado especificamente para o tratamento do sinal. O bit reservado por este método é o mais significativo, ou seja, o último bit ou o mais à esquerda. Nesse método, o bit 1 mais significativo representa sinal negativo e o bit 0 representa sinal positivo. 000 = +0 001 = +1 010 = +2 011 = +3 100 = -0 101 = -1 110 = -2 111 = -3 Exemplo: Perceba que, nesse exemplo, os quatro primeiros números binários resultam em números decimais positivos, pois o bit mais significativo (à esquerda) é 0. Os demais quatro números binários resultam em números decimais negativos, pois o bit mais significativo é 1. É evidente, nesse método, a existência de duas formas de ser representar o número zero. O número binário 000 representa o +0 e o número binário 100 representa o -0. Essa característica faz com que seja desperdiçado uma representação binária, pois com três bits pode-se representar oito dígitos e, entretanto, existem apenas sete representações, pois o número zero é representado duas vezes. Além do fato citado acima, este modelo de representação possuí uma implementação em hardware mais complicada e menos eficiente, pois, para fazer qualquer tipo de operação aritmética é necessário inicialmente analisar o bit mais significativo e logo após realizar a operação. 1.2. Complemento de 1 Este modelo de representação binária, os bits sofrem a inversão de seus valores (negação) quando representam um número negativo. 000 = +0 111 = -0 001 = +1 110 = -1 010 = +2 101 = -2 011 = +3 100 = -3 Exemplo: Perceba que, no exemplo acima, os números binários negativos são representados pela inversão de seus correspondentes positivos. Esse tipo de representação, semelhante ao que ocorre no modelo sinal e magnitude, existe o desperdício de representação para o número zero, existindo duas versões de um mesmo dígito: 000 = +0 e 111 = -0. Este método também acaba tendo uma implementação problemática para algumas operações aritméticas. 1.3. Complemento de 2 Este modelo é o padrão usualmente utilizado para representar números negativos nos sistemas computacionais atuais. Semelhante ao modelo sinal e magnitude, o complemento de dois também utiliza de um bit para indicar o sinal de número, entretanto, esse bit é baseado no complemento de 1. 000 = +0 001 = +1 010 = +2 011 = +3 100 = -4 101 = -3 110 = -2 111 = -1 Exemplo: A representação de número negativos nesse modelo ocorre primeiramente aplicando o complemento de um sobre o número binário positivo. Após a inversão de seus valores (negação) se adiciona 1 binário ao número revertido e se tem uma representação binária de um número negativo. Exemplo: 0000 0111 = +7 -> inverte -> 1111 1000 -> soma 1 -> 1111 1001 Diferente dos outro modelos já citados no texto, este modelo possui a vantagem de possuir apenas uma representação para o número zero: 000. Além desse diferencial o complemento de dois possui uma melhor aplicação em operações aritméticas.
Compartilhar