Problemas com Sign-Magnitude Existem problemas com a representação de magnitude de signos de inteiros. Vamos usar 8-bit sinal-magnitude para exemplos. O bit mais à esquerda é usado para o sinal, que deixa sete bits para a magnitude. A magnitude usa binário não assinado de 7 bits, que pode representar 0 10 (como 000 0000) até 127 10 (como 111 1111). O oitavo bit torna estes positivos ou negativos, resultando em -127 10. -0, 0,127 10. Um padrão corresponde a zero zero, 1000 0000. Outro corresponde a mais zero, 0000 0000. Existem vários problemas com sinal-magnitude. Ele funciona bem para representar números inteiros positivos e negativos (embora os dois zeros sejam incômodos). Mas não funciona bem em computação. Um bom método de representação (para inteiros ou para qualquer coisa) não deve apenas ser capaz de representar os objetos de interesse, mas também deve suportar operações sobre esses objetos. Isto é o que está errado com números romanos: eles podem representar inteiros positivos, mas eles são muito pobres quando usados em computação. PERGUNTA 13: O algoritmo de adição binário pode ser usado com a representação de sinal-magnitude Tente adicionar 16 com -24: Como existem 256 possíveis padrões de bits com 8 bits, pode haver 128 inteiros positivos e 128 negativos. Você pode ter pensado no método da magnitude do sinal, discutido abaixo. Representação de Magnitude de Sinal Existem muitos esquemas para representar números inteiros negativos com padrões de bits. Um esquema é sign-magnitude. Ele usa um bit (geralmente o mais à esquerda) para indicar o sinal. 0 indica um inteiro positivo e 1 indica um inteiro negativo. O restante dos bits é usado para a magnitude do número. Assim -24 10 é representado como: PERGUNTA 12: Com representação de magnitude de sinal de 8 bits, quais inteiros positivos podem ser representados e quais números inteiros negativos podem ser representadosNúmero Binário Sinalizado No entanto, ao lidar com números negativos, usamos um sinal - ve Frente do número para mostrar que o número é negativo em valor e diferente de um valor positivo não assinado, eo mesmo é verdadeiro com números binários assinados. No entanto, nos circuitos digitais não há nenhuma disposição feita para colocar um sinal de mais ou mesmo menos para um número, uma vez que os sistemas digitais operam com números binários que são representados em termos de 822008217s8221 e 822018217s8221. Quando usados em microeletrônica, esses 822018217s8221 e 822008217s8221, chamados de bits (que são uma contração de BINARY digiT), se enquadram em vários tamanhos de escala de números que são referidos por nomes comuns, como um byte ou uma palavra. Já vimos anteriormente que um número binário de 8 bits (um byte) pode ter um valor que varia de 0 (00000000 2) a 255 (11111111 2), ou seja, 2 8 256 combinações diferentes de bits formando um único byte de 8 bits . Assim, por exemplo, um número binário não assinado tal como: 01001101 2 64 8 4 1 77 10 em decimal. Mas os sistemas digitais e computadores também devem ser capazes de usar e manipular números negativos, bem como números positivos. Os números matemáticos são geralmente constituídos por um sinal e um valor (magnitude) em que o sinal indica se o número é positivo, () ou negativo, () com o valor indicando o tamanho do número, por exemplo 23, 156 ou - 274. Apresentar números é esta forma é chamada 8220sign-magnitude8221 representação uma vez que o dígito esquerdo mais pode ser usado para indicar o sinal e os dígitos restantes a magnitude ou valor do número. A notação de sinal-magnitude é o mais simples e um dos métodos mais comuns de representar números positivos e negativos de cada lado de zero, (0). Assim, números negativos são obtidos simplesmente alterando o sinal do número positivo correspondente, pois cada número positivo ou não assinado terá um oposto assinalado, por exemplo, 2 e -2, 10 e -10, etc. Mas como representamos números binários assinados Se tudo o que temos é um monte de one8217s e zero8217s. Sabemos que os dígitos binários, ou bits só têm dois valores, quer um 822018221 ou um 822008221, e convenientemente um sinal também tem apenas dois valores, um 8220 8221 ou um 8220 8220. Então, podemos usar um único bit para identificar o sinal de Um número binário assinado. Assim, para representar um número binário positivo (N) e negativo (-N), podemos usar os números binários com sinal. Para números binários assinados, o bit mais significativo (MSB) é usado como sinal. Se o bit de sinal é 822008221, significa que o número é positivo. Se o bit de sinal é 822018221, então o número é negativo. Os bits restantes são usados para representar a magnitude do número binário no formato de número binário não assinado usual. Então podemos ver que a notação Sign-and-Magnitude (SM) armazena valores positivos e negativos dividindo os 8220n8221 bits totais em duas partes: 1 bit para o sinal e n1 bits para o valor que é um número binário puro. Por exemplo, o número decimal 53 pode ser expresso como um número binário assinado de 8 bits como se segue. Números Binários Assinados Positivos Números Binários Assinados Negativos A desvantagem aqui é que enquanto antes tínhamos um número binário não assinado de n bits, temos agora um número binário binário de n-1 bit dando uma gama de dígitos de: - (2 (n-1) ) Para (2 (n-1) 8211 1) Assim, por exemplo: se tivermos 4 bits para representar um número binário assinado, (1 bit para o bit Sign e 3 bits para os bits Magnitude), então o intervalo real De números que podemos representar em notação de sinal-magnitude seria: - (2 (4-1)) a (2 (4-1) 8211 1) -2 (3) a 2 (3) 8211 1 Considerando que antes, De um número binário não assinado de 4 bits teria sido de 0 a 15. ou 0 a F em hexadecimal. Em outras palavras, a aritmética binária não assinada não tem um bit de sinal e, portanto, pode ter um intervalo binário maior, já que o bit mais significativo (MSB) é apenas um bit ou dígito extra em vez de um bit de sinal. Números binários assinados Exemplo No1 Converta os seguintes valores decimais em números binários assinados usando o formato de magnitude de sinal: -15 10 como um número de 6 bits Note que para um número de 4 bits, 6 bits, 8 bits, 16 bits ou Número binário assinado de 32 bits todos os bits devem ter um valor, portanto 822008217s8221 são usados para preencher os espaços entre o bit de sinal mais à esquerda e o primeiro ou maior valor 822018221. A representação de magnitude de sinal de um número binário é um método simples de usar E compreender para representar números binários assinados, como nós usamos este sistema todo o tempo com números decimais normais (base 10) em matemática. Adicionando um 822018221 à frente dele se o número binário for negativo e um 822008221 se for positivo. No entanto, usando este método de magnitude de sinal pode resultar na possibilidade de dois padrões de bits diferentes com o mesmo valor binário. Por exemplo, 0 e -0 seriam 0000 e 1000, respectivamente, como um número binário assinado de 4 bits. Assim, podemos ver que usando este método pode haver duas representações para zero, um zero positivo (0 000 2) e também um zero negativo (1 000 2) que pode causar grandes complicações para computadores e sistemas digitais. Complemento de One8217s de um número binário assinado O complemento de One8217s ou complemento de 18217s como é chamado também, é um outro método que nós podemos usar para representar números binários negativos em um sistema binário assinado do número. No complemento, os números positivos (também conhecidos como não complementares) permanecem inalterados como antes com os números de magnitude de sinal. Números negativos no entanto, são representados por tomar o complemento (inversão, negação) do número positivo não assinado. Como números positivos sempre começam com um 822008221, o complemento sempre começará com um 822018221 para indicar um número negativo. O complemento de um número binário negativo é o complemento de sua contrapartida positiva, então para tomar o complemento de um número binário, tudo o que precisamos fazer é mudar cada bit por vez. Assim, o complemento de 822018221 é 822008221 e vice-versa, então o complemento de 100101002 é simplesmente 011010112, uma vez que todos os 18217s são alterados para 08217s e os 08217s para 18217s. A maneira mais fácil de encontrar o complemento de um número binário assinado ao construir circuitos digitais de descodificação de lógica ou aritmética é usar Inversores. O inversor é naturalmente um gerador de complemento e pode ser usado em paralelo para encontrar o complemento 18217s de qualquer número binário como mostrado. 18217s Complemento Usando Inversores Então podemos ver que é muito fácil encontrar o complemento de um número binário N como tudo o que precisamos fazer é simplesmente mudar o 1s para 0s e os 0s para 1s para nos dar um - N equivalente. Igualmente, tal como a representação anterior de magnitude de sinal, o complemento de um 8217 pode também ter notação de n bits para representar números na gama de: -2 (n-1) e 2 (n-1) 8211 1. Por exemplo, Bit no formato de complemento pode ser usado para representar números decimais no intervalo de -8 a 7 com duas representações de zero: 0000 (0) e 1111 (-0) o mesmo que antes. Adição e Subtração Usando One8217s Complemento Uma das principais vantagens de One8217s Complemento é na adição e subtração de dois números binários. Em matemática, a subtração pode ser implementada em uma variedade de maneiras diferentes como A B. é o mesmo que dizer A (-B) ou - B A etc. Portanto, a complicação de subtrair dois números binários pode ser realizada simplesmente usando adição. Vimos no tutorial do Binary Adder que a adição binária segue as mesmas regras que para a adição normal, exceto que em binário há apenas dois bits (dígitos) eo maior dígito é um 822018221, (assim como 822098221 é o maior dígito decimal), portanto As combinações possíveis para a adição binária são as seguintes: Quando os dois números a serem adicionados são ambos positivos, a soma A B. podem ser somados por meio da soma direta (incluindo o número eo sinal de bit), porque quando os bits simples São adicionados em conjunto, 82200 08221, 82200 18221 ou 82201 08221 resulta numa soma de 822008221 ou 822018221. Isto é porque quando os dois bits que queremos ser adicionados em conjunto são ímpares (822008221 822018221 ou 82201 08221), o resultado é 822018221. Da mesma forma, quando os dois bits a serem adicionados são pares (82200 08221 ou 82201 18221) o resultado é 822008221 até chegar a 82201 18221 então a soma é igual a 822008221 mais um carry 822018221. Let8217s olhar para um exemplo simples. Subtração de dois números binários Um sistema digital de 8 bits é necessário para subtrair os seguintes dois números 115 e 27 uns dos outros usando o complemento de um 8217s. Então em decimal isso seria: 115 8211 27 88. Primeiro precisamos converter os dois números decimais em binário e certificar-se de que cada número tem o mesmo número de bits, adicionando zero8217s para produzir um número de 8 bits (byte). Portanto: 115 10 em binário é: 01110011 2 27 10 em binário é: 00011011 2 Agora precisamos encontrar o complemento do segundo número binário, (00011011), deixando o primeiro número (01110011) inalterado. Assim, alterando todos os 18217s para 08217s e 08217s para 18217s, o complemento one8217s de 00011011 é, portanto, igual a 11100100. Adicionando o primeiro número eo complemento do segundo número dá: Overflow 1 01010111 Uma vez que o sistema digital é trabalhar com 8 bits, apenas os primeiros oito dígitos são usados para fornecer a resposta para a soma, e nós simplesmente ignorar o último bit (Bit 9). Este bit é chamar um bit 8220overflow8221. O estouro ocorre quando a soma da coluna mais significativa (à esquerda) produz um carry forward. Este bit de transbordo ou de transporte pode ser ignorado completamente ou passado para a próxima seção digital para uso em seus cálculos. Overflow indica que a resposta é positiva. Se não houver excesso, então a resposta é negativa. O resultado de 8 bits acima é: 01010111 (o overflow 822018221 cancela) e convertê-lo de uma resposta de complemento de um8217s para a resposta real agora temos de adicionar 822018221 ao resultado do complemento de one8217s, portanto: Portanto, o resultado de subtrair 27 (00011011 2) a partir de 115 (011100112) utilizando o complemento 18217s em binário dá a resposta de: 01011000 2 ou (64 16 8) 88 10 em decimal. Então podemos ver que os números binários assinados ou não assinados podem ser subtraídos uns dos outros usando o Complemento One8217s eo processo de adição. Adicionadores binários como o TTL 74LS83 ou 74LS283 podem ser usados para adicionar ou subtrair dois números binários assinados de 4 bits ou em cascata para produzir sumers de 8 bits completos com carry-out. Outro complemento, como também é chamado, é outro método, como a forma de complemento de sinal e magnitude de sinal anterior, que podemos usar para representar números binários negativos em um sistema de números binários assinados. Em dois complementos, os números positivos são exatamente os mesmos que antes para números binários não assinados. Um número negativo, no entanto, é representado por um número binário, que quando adicionado ao seu correspondente equivalente positivo resulta em zero. Em dois complementos, um número negativo é o complemento de 28217s do seu número positivo com a subtração de dois números sendo ABA (28217s complemento de B) usando muito o mesmo processo como antes, como basicamente, o complemento 28217s é um complemento de 1 8217s. A principal vantagem Do complemento dois8217s sobre o complemento anterior é que não há nenhum problema zero duplo mais é muito mais fácil gerar o complemento de dois de um número binário assinado. Portanto, as operações aritméticas são relativamente mais fáceis de executar quando os números são representados no formato de dois complementos. Vamos olhar para a subtração de nossos dois números de 8 bits 115 e 27 de cima usando o complemento two8217s, e lembramos de cima que os equivalentes binários são: 115 10 em binário é: 01110011 2 27 10 em binário é: 00011011 2 Nossos números São de 8 bits de comprimento, então existem 2 8 dígitos disponíveis para representar nossos valores e em binário isso é igual a: 100000000 2 ou 256 10. O complemento do segundo número negativo significa que a subtração se torna uma adição muito mais fácil dos dois números, portanto, a soma é: 115 (complemento de 28217s) De 27) que é: 01110011 11100101 1 01011000 2 Como anteriormente, o 9º bit de excesso é desconsiderado, como estamos interessados apenas nos primeiros 8 bits, então o resultado é: 01011000 2 ou (64 16 8) 88 10 em decimal o o mesmo de antes. Números Binários Assinados Resumo Vimos que números binários negativos podem ser representados usando o bit mais significativo (MSB) como um bit de sinal. Se um número binário de n bits é assinado, o bit mais à esquerda é usado para representar o sinal deixando n-1 bits para representar o número. Por exemplo, em um número binário de 4 bits, isso deixa apenas 3 bits para armazenar o número real. No entanto, se o número binário não estiver assinado, todos os bits podem ser usados para representar o número. A representação de um número binário assinado é comumente referida como a notação de sinal-magnitude e se o bit de sinal é 822008221, o número é positivo. Se o bit de sinal é 822018221, então o número é negativo. Ao lidar com operações aritméticas binárias, é mais conveniente usar o complemento do número negativo. A complementação é uma forma alternativa de representar números binários negativos. Este sistema de codificação alternativo permite a subtração de números negativos usando adição simples. Uma vez que os números positivos de magnitude de sinal começam sempre com um zero (0), seu complemento, portanto, começará sempre com um (1) para indicar um número negativo como mostrado na tabela a seguir. Comparação de números binários assinados de 4 bits As formas de complemento assinado de números binários podem usar o complemento 18217s ou o complemento 28217s. O complemento 18217s eo complemento 28217s de um número binário são importantes porque permitem a representação de números negativos. O método de aritmética de complemento 28217s é comumente usado em computadores para lidar com números negativos a única desvantagem é que se quisermos representar números binários negativos no formato de número binário assinado, devemos desistir de um pouco do intervalo do número positivo que tivemos antes . 27 Comentários Junte-se à conversa Erro Por favor, preencha todos os campos. As Noções Básicas Para Anunciantes Rede Aspencore Conecte-se Conosco Todos os conteúdos são cópia Copyright 2016 por AspenCore, Inc. Todos os direitos reservados.
No comments:
Post a Comment