Você está na página 1de 28

Aula 4

Aritmética Computacional

Sistemas de Computação I

Centro de Ciências Computacionais – C3 - FURG


Sistemas de Numeração

Sistemas de Computação 1
Sistema Decimal
 0,1,2,3,4,5,6,7,8,9
 5768 = (5x1000)+(7x100)+(6x10)+8
 Base 10: cada dígito do número é multiplicado por 10
elevado a potência correspondente a posição do dígito.
 Ou seja:
 67= (6x101 )+(7x100 )
 5768 = (5x 103 ) + (7x102 ) + (6x101 )+ (8x100 )
 Valores fracionários
 45,389 = (4x101 ) + (5x100 ) + (3x10-1 )+(8x10-2 )+(9x10-3 )
 Representação decimal de X = { …x2,x1,x0,x-1,x-2 …}
 x 10
i
X= i
 `` i
Sistema Binário
 1e0
 0(2) = 0(10) e 1(2)= 1(10)
 10(2) = (1x21) + (0x20)
 111 = (1x2 2) + (1x2 1) + (1x2 0)
 101,111 = (1x2 2) + (0x2 1) + (1x2 0) + (1x2 -1) + (1x2 -2)
+ (1x2 -3)
Conversão entre números binários e
decimais
 Notação Binária -> Notação Decimal: Multiplicar cada
dígito binário pela potência de 2 adequada e somar os
resultados.
 Notação Decimal -> Notação Binária:
 Números Inteiros: repetidas divisões
Conversão entre números binários e
decimais
 Parte Fracionária: repetidas multiplicações
Notação Hexadecimal
 16 símbolos: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
 Notação mais compacta
 Dígitos binários agrupados em conjuntos de 4
 Hexa -> Decimal
 2C(16) = (2 x 161 ) + (C x 160) = 32 + 12x1 = 44
 Binário para Hexa
 1111 1010 0010 0110(2) = FA26(16)
 F A 2 6
 Hexa para Binário
 BC3(16) = 1011 1100 0011(2)
Exercícios
 Converter os seguintes números:
 A) 234(10) = X (2) = X (16)
 B) 10010(2) = X (16) = X (10)
 C) F3A(16) = X (2) = X (10)
 D) 1B8(16) = X (2) = X (10)
 E) 11100011101(2) = X (10) = X (16)
A Unidade Lógica e Aritmética

Sistemas de Computação 1
A Unidade Lógica e Aritmética
 Executa as operações lógicas e aritméticas sobre os
dados.

Unidade de Controle Bits Especiais

Registradores ULA Registradores


Representação de Números Inteiros
 Números Inteiros e Positivos

x 2
i
X= i
i

 Problema:
 Como representar Sinal e Vírgula para serem armazenados e
processados?
Representação Sinal-Magnitude
 Representação de ponto fixo
 Representação de Números inteiros positivos e negativos
 Bit mais significativo da palavra (mais a esquerda) como Bit de
Sinal
 0 se o número é positivo
 1 se o número é negativo
 Em uma palavra de n bits, os n-1 bits mais à direita
representam a magnitude do número inteiro.
 +18 = 00010010
 - 18 = 10010010
Desvantagens do Sinal- Magnitude
 Durante a Adição e Subtração:
 Preciso considerar tanto a magnitude quanto o sinal dos
operandos.
 Duas representações para o número 0:
 +0 = 00000000
 - 0 = 10000000
 Dificulta comparar se um número é igual a 0!

Por isso, a representação Sinal – Magnitude é raramente usada.


Representação em Complemento de 2
 Usa o bit mais significativo como bit de sinal.
 Zero: tratado como número positivo.
 Representação de ponto fixo
Representação em Complemento de 2
Representações Alternativas
Conversão entre números binários em
complemento de 2 e números decimais
Conversão entre representações com
números de bits diferentes
 Converter um número inteiro de n bits em um número
inteiro de m bits, onde m>n
 Sinal Magnitude: Mover o bit de sinal para a posição mais a
esquerda e preencher as demais posições com zeros.
 Exemplos:

 Complemento de 2: Mover o bit de sinal para a posição mais a


esquerda e preencher as demais posições com valor igual ao
bit de sinal.
 Números positivos = preencher com zeros
 Números negativos = preencher com uns
 Exemplos:
Aritmética de Números Inteiros
 Negação
 Complemento de 2:
 Tome o complemento booleano de cada bit do número, incluindo o
bit de sinal. (troque cada 1 por 0 e cada 0 por 1).
 Adicione 1 ao resultado, visto como número inteiro binário sem sinal.

 Sinal Magnitude:
 inverter o bit de sinal
Operação de Complemento de 2
 Trocar bits 0s por 1s e 1s por 0s.
 Somar 1
 +18 = 00010010
 Complemento bit a bit = 11101101
 + 1
 11101 110 = -18
 Complemento de 2 do complemento de 2 = número inicial
 -18 = 11101110
 Complemento bit a bit = 00010001
 + 1
 00010010= +18
Casos Especiais – Complemento de 2
 Complemento de 2 de ZERO:
 0 = 00000000
 Complemento bit a bit = 11111111
 + 1
 100000000 = 0
 O bit ‘vai-um’ (carry-in) com valor 1 é ignorado. Assim, o
complemento de 2 de Zero é Zero.
Casos Especiais – Complemento de 2
 Complemento de 2 de um número formado por um bit
com valor UM e seguido de n-1 bits de valor zero:
 -128 = 10000000
 Complemento bit a bit = 01111111
 + 1
 10000000 = -128
 Obtemos o mesmo número?
 Essa anomalia não pode ser evitada. Usando Complemento de
2 não haverá uma representação para o valor +2n , a
representação máxima é até +2n -1.
Aritmética de Números Inteiros – Adição
 1001 -7  1100 -4
 +0101 5  +0100 4
 1110 = -2  10000 = 0

 0011 3  1100 -4
 +0100 4  +1111 -1
 0111 = 7  11011 = -5

 0101 5  1001 -7
 +0100 4  +1010 -6
 1001 = Overflow  10011 = Overflow
Aritmética de Números Inteiros – Adição
 Overflow:
 Na adição de 2 números, ambos positivos ou negativos,
ocorrerá overflow somente se o resultado tiver sinal oposto.
 Pode ocorrer overflow mesmo não havendo ‘vai-um’ para for a
do bit mais significativo.
Aritmética de Números Inteiros -
Subtração
Para subtrair S de M, pegue o complemento de 2 de S e
acrescente esse valor a M.
M-S = 2 - 7  M-S = 5-2
a) M=2=0010 a) M=5=0101
b) S=7=0111 b) S=2=0010
c) -S = 1001 c) -S = 1110

 0010  0101
 +1001  +1110
 1011  10011
Aritmética de Números Inteiros -
Subtração
M-S = -5-2  M-S = 5-(-2)
a) M=-5=1011 a) M=5=0101
b) S= 2=0010 b) S=-2=1110
c) -S = 1110 c) -S = 0010

 1011  0101
 +1110  +0010
 11001 = -7  0111 = 7
Aritmética de Números Inteiros -
Subtração
 M-S = 7 –(-7)  M-S = -6 – 4
a) M= 7=0111 a) M= -6=1010
b) S=-7=1001 b) S= 4= 0100
c) -S = 0111 c) -S = 1100

 0111  1010
 +0111  +1100
 1110 = Overflow  10110 = Overflow
Aritmética de Números Inteiros
Adição e Subtração

Você também pode gostar