Números Binários Negativos
Os
computadores lidam com números positivos e números negativos, sendo necessário
encontrar uma representação para números com sinal negativo. Existe uma grande
variedade de opções, das quais nesta seção serão apresentadas apenas três para
representar valores negativos:
- Sinal e amplitude/magnitude (S+M);
- Complemento de 1;
- Complemento de 2.
Sinal e Amplitude/Magnitude (S + M)
Como o próprio nome indica, a
representação sinal e amplitude utiliza um
bit para representar o sinal, o bit mais à esquerda: 0 para
indicar um valor positivo, 1 para indicar um valor negativo.
Complemento de 1
Na representação em complemento de 1
invertem-se todos os bits de um número para representar o seu complementar:
assim, se converte um valor positivo para um negativo, e vice-versa. Quando o
bit mais à esquerda é 0, esse valor é positivo; se for 1, então é negativo.
Exemplo:
10010 =
011001002 (com 8 bits)
|
Invertendo
todos os bits:
100110112 =
–10010
|
O problema desta representação é que
existem 2 padrões de bits para o 0, havendo assim desperdício de representação:
010 =
000000002 = 111111112
|
Complemento de 2
A solução encontrada consiste em
representar os números em complemento de 2. Para determinar o
negativo de um número, inverte-se todos os seus bits e soma-se uma unidade.
Exemplo:
Representação
binária
10110 =
011001012 (com 8 bits)
Invertendo
todos os bits
100110102
Somando uma
unidade
100110102 +
1 = 100110112 = –10110
A
representação em complemento para 2 tem as seguintes características:
- o bit da esquerda indica o
sinal;
- possui processo para converter
um número de positivo para negativo e de negativo para positivo;
- o 0 tem uma representação
única: todos os bits a 0;
- a gama de valores que é
possível representar com n bits é -2n-1 … 2n-1-1.
Exemplo:
Qual o número representado por
111001002 (com 8 bits)? Como o bit da esquerda é 1 este número
é negativo.
Invertendo
todos os bits:
000110112
|
Somando uma
unidade:
000110112 +
1 = 000111002 = 2810
|
Logo:
111001002 =
– 2810
|
Nenhum comentário:
Postar um comentário