Você está na página 1de 5

UNIVERSIDADE ESTADUAL DE MARINGÁ

DEPARTAMENTO DE INFORMÁTICA

Números negativos e
não inteiros em binário
Prof. Yandre Maldonado - 1

Prof. Yandre Maldonado e Gomes da Costa


yandre@din.uem.br

Números negativos e não


inteiros em binário
 Negativo em binário:
 A maneira mais comum utilizada para
representar números negativos em
Prof. Yandre Maldonado - 2

binário é tomando o dígito mais a


esquerda para representar o sinal;
 Por padrão, 0 representa sinal
positivo e 1 sinal negativo;
-27 26 25 24 23 22 21 20

Bit de sinal

Números negativos e não


inteiros em binário
 Transformando o binário negativo em
decimal:
 Soma-se os bits “ligados” (com 1),
Prof. Yandre Maldonado - 3

considerando-se os seguintes valores:


-27 26 25 24 23 22 21 20
-128 64 32 16 8 4 2 1

• Exemplo baseado em seqüência de 8 bits

1
Números negativos e não
inteiros em binário
 Exemplos:
1 1 1 1 1 0 1 1 Decimal

-128 123 -5
Prof. Yandre Maldonado - 4

1 1 0 1 0 1 1 1 Decimal

-128 87 -41

1 1 1 1 1 1 1 1 Decimal

-128 127 -1

Números negativos e não


inteiros em binário
 Outro método para converter é utilizar o
complemento de 2, que consiste em:
 Tomar o complemento da seqüência;
Prof. Yandre Maldonado - 5

 Adicionar 1 ao complemento;
 A seqüência 100011112, poderia ser
convertida da seguinte forma:
• Complemento: 01110000
• Incrementa 1: 01110001
• Convertendo para decimal obtem-se 113;
• Como o dígito de sinal era 1, o valor
correspondente em decimal é -113

Números negativos e não


inteiros em binário
 Decimal negativo para binário:
 Toma-se a magnitude do número em binário;
 Faz-se o complemento e incrementa-se 1
unidade (estabelecendo um número de bits
Prof. Yandre Maldonado - 6

para o tamanho da seqüência);


 Exemplo (8 bits*):
• Para converter -710, toma-se inicialmente o valor
absoluto
• 710 = 000001112
• Complemento: 11111000 (em 8 bits)
• Incremento de uma unidade: 11111001
-710 = 111110012 (em 8 bits)

* Note que isto limita a representação ao intervalo entre -128 e 127

2
Números negativos e não
inteiros em binário
 Números não inteiros:
 Soma-se os bits “ligados” (com 1), de
acordo com a seguinte tabela:
Prof. Yandre Maldonado - 7

23 22 21 20 , 2-1 2-2 ...


0 1 0 1 , 0 1

 0x8 + 1x4 + 0x2 + 1x1 + 0x1/2 + 1x1/4


= 5,25

Números negativos e não


inteiros em binário
 Exemplos:
 0,112 = 1x2-1 + 1x2-2 = 0,7510
Prof. Yandre Maldonado - 8

 1001,0112 = 1x23 + 0x22 + 0x21 + 1x20


+ 0x2-1 + 1x2-2 + 1x2-3 =
8+1+0,25+0,125 = 9,37510

Números negativos e não


inteiros em binário
 Não inteiro menor que 1 para binário:
 Multiplica-se o valor por 2 e extrai-se
a parte inteira, repete-se
Prof. Yandre Maldonado - 9

sucessivamente até que a parte não


inteira seja igual a 0. A representação
binária será formada pela seqüência
das partes inteiras extraídas;

3
Números negativos e não
inteiros em binário
 Exemplos:
 0,7510
• 0,75 x 2 = 1,5 => 1
Prof. Yandre Maldonado - 10

• 0,5 x 2 = 1,0 => 1


• 0
0,7510 = 0,112
 0,37510
• 0,375 x 2 = 0,75 =>0
• 0,75 x 2 = 1,5 =>1
• 0,5 x 2 = 1,0 =>1
0,37510 = 0,0112

Números negativos e não


inteiros em binário
 Exercícios:
 Converta valores binários negativos
para decimal, considerando
seqüências de 8 bits:
Prof. Yandre Maldonado - 11

• 101010102;
• 110011102;
 Converta de decimal para binário:
• -7510;
• -12010;

Números negativos e não


inteiros em binário
 Exercícios:
 Converta de binário para decimal:
• 0,10012;
Prof. Yandre Maldonado - 12

• 1001,11012;
• 11111,0012;
 Converta de decimal para binário:
• 83,4710;
• 0,93810;

4
Bibliografia

 Slides baseados em:


 Sica, Carlos. Sistemas de Numeração
para a Computação. DIN/CTC/UEM,
Prof. Yandre Maldonado - 13

2009.