Arquitetura e Organização de Computadores aula 2 - Inf

Propaganda
Arquitetura e Organização de
Computadores
aula 2
Profa. Débora Matos
Sistema binário
• Cada dígito do sistema binário é
denominado bit (binary digit);
• Um quarteto (4) de bits é denominado de
NIBBLE;
• Um octeto (8) de bits é chamado de BYTE;
• 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.
Soma de números binários
a
c
d=a+c
0
0
0
0
1
1
1
0
1
1
1
0 e “vai um”
Tabela verdade de um meio somador
Soma de números binários
a
c
vem-um
0
0
0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
d=a+c
Tabela verdade de um somador completo
vai-um
Soma de números binários
a
c
vem-um
d=a+c
vai-um
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
0
1
1
0
1
1
0
0
1
0
1
0
1
0
1
1
1
0
0
1
1
1
1
1
1
Tabela verdade de um somador completo
Números inteiros positivos
• Quantos números conseguimos
representar com 3 dígitos binários?
• E com 5 dígitos binários?
• Quantos números conseguimos
representar com 4 dígitos em base 3?
Números com sinal: representação em
sinal magnitude
• Para representar números com sinal,
normalmente utiliza-se o dígito mais
significativo:
Faixa de representação:
[-(Bn-1 -1), (Bn-1 -1)]
negativos, positivos
Números com sinal: representação em
sinal magnitude
• Das Bn combinações, usam-se somente
2Bn-1-1= 2n-1 para representar o total de
valores a serem representados:
• Em binário utiliza-se:
0 => para representar números positivos
1=> para representar números negativos
Números com sinal: representação em
sinal magnitude
1) Exercícios:
01010010 =
11010010 =
0101 =
1101 =
01011110 =
10010010 =
Números com sinal: representação em
sinal magnitude
1) Exercícios:
01010010 = 82
11010010 = -82
0101 = 5
1101 = -5
01011110 = 94
10010010 = -18
Números com sinal: representação em
sinal magnitude
• Um número em sinal magnitude é
representado por:
a= S(a)M(a)
(0 ou 1)
• Nesta representação a magnitude
permanece igual para números positivos e
negativos
Soma de dois números
(sinal-magnitude)
S(a)
S(c)
S(d)
+
+
+
-
+
-
_
+
Se M(a)>=M(c), +
Se M(a)<M(c), Se M(a)>M(c), +
Se M(a)<=M(c), -
M(d)
M(a)+M(c)
Exemplo
00101 + 00111=01100
M(a)+M(c) 10101 + 10111 = 11100
M(a)-M(c)
M(c)-M(a)
M(a)-M(c)
M(c)-M(a)
d=a+c
00111 + 10101 = 00010
00101 – 10111 = 10010
10111 + 00101 = 10010
10101 – 10111 = 00010
Números com sinal: representação em
complemento de B-1
• Números positivos são representados
da mesma forma;
• Números negativos são representados
em complemento.
• O complemento é obtido subtraindo-se
esse número (a) da maior quantidade
representável:
Bn-1-a
Números com sinal: representação em
complemento de B-1
• Faixa de representação para base binária:
-Bn/2-1, Bn/2-1
• Ainda continua existindo a dupla
representação do zero.
Números com sinal: representação em
complemento de B-1
• Determinação do sinal em complemento de B-1:
– metade superior da faixa: negativo
– metade inferior da faixa: positivo
– Para bases pares, basta verificar o dígito mais
significativo
Exemplo: 4³ = 64 combinações
Então: 0 – 31: positivos
32-63: negativos
Números com sinal: representação em
complemento de B-1
2) Exercícios: Descubra qual é o número equivalente em
decimal para os seguintes binários em complemento de B1:
a) com 4 dígitos:
–
–
–
–
1110
1001
1010
0101
b) Com 6 dígitos:
– 101011
– 100111
– 111100
Números com sinal: representação em
complemento de B-1
• Para negar um número positivo, basta complementar
Bn-1-a
• Em alguns casos pode ocorrer estouro de
representação: 1110 + 1101 = 1011 e vai um
• Para resolver esse problema, basta adicionar 1 na
soma final => 1011 + 0001 = 1100
1110 => 1111 – 1110 = 0001 = -1 (decimal)
1101 => 1111 – 1101 = 0010 = -2 (decimal)
1100 => 1111 – 1100 = 0011 = -3 (decimal)
Soma em complemento de B-1
3) Exercícios: Obter o valor da soma de a+c para os
seguintes casos em complemento de B-1 na base 2:
a
c
1
1110
1001
2
1111
0001
3
1001
0111
4
0110
1111
5
0101
1000
6
0111
1010
d=a+c
Soma em complemento de B-1
3) Exercícios: Obter o valor da soma de a+c para os
seguintes casos em complemento de B-1 na base 2:
a
c
d=a+c
1
1110
1001
1000
2
1111
0001
0001
3
1001
0111
0001
4
0110
1111
0110
5
0101
1000
1101
6
0111
1010
0010
Números com sinal: representação em
complemento de B
• Vantagem: não tem dupla representação
• Utiliza-se a fórmula Bn-a.
• Faixa de representação: (para pares)
[-(Bn/2), +(Bn/2-1)]
• Nesse caso, a faixa negativa sofre o deslocamento de
1 unidade. Os números positivos permanecem iguais.
• Exemplo: base 2, 4 dígitos:
1000 até 0111 : -8 até 7
Números com sinal: representações
Binário
Inteiros positivos
Sinal-magnitude
Complemento de 1
Complemento de 2
0000
0
0
0
0
0001
1
1
1
1
0010
2
2
2
2
0011
3
3
3
3
0100
4
4
4
4
0101
5
5
5
5
0110
6
6
6
6
0111
7
7
7
7
1000
8
-0
-7
-8
1001
9
-1
-6
-7
1010
10
-2
-5
-6
1011
11
-3
-4
-5
1100
12
-4
-3
-4
1101
13
-5
-2
-3
1110
14
-6
-1
-2
1111
15
-7
-0
-1
Números com sinal: representação em
complemento de B
• Cálculo do valor do número:
a) Determinação do sinal: se a representação do número como
inteiro positivo estiver na metade superior da faixa, ele é
negativo:
Exemplo: 0000 a 1111=> 0 a 15
0000 a 0111 - 0 a 7 é positivo
1000 a 1111 - 8 a 15 é negativo
Para bases pares basta analisar o dígito mais significativo, se
igual a 1 na base binária, o número é negativo.
Números com sinal: representação em
complemento de B
b) Determinação da magnitude do número: Se o
número é negativo, para calcular o seu valor deve se
calcular o complemento de B:
Realizar o complemento de (B-1) ex: 1111-a, e por fim,
somar 1 ao resultado:
Exemplos:
1111
1111
+ 1100
0011
0001
0100 = -4
+ 1011
0100
0001
0101 = -5
Números com sinal: representação em
complemento de B
4) Exercícios: Encontre o valor em decimal que representa
o número em binário em complemento de 2.
Com 4 dígitos
a) 1110 =
b) 1001 =
c) 1010 =
Com 6 dígitos
a) 101111=-17 b) 110100=-12 c) 111001=
Números com sinal: representação em
complemento de B
4) Exercícios: Encontre o valor em decimal que representa
o número em binário em complemento de 2.
Com 4 dígitos
a) 1110 = -2
b) 1001 = -7
c) 1010 = -6
Com 6 dígitos
a) 101111=-17 b) 110100=-12 c) 111001=-7
Soma em complemento de B
Para obter o resultado da soma em complemento de 2,
quando houver o vai-um, desconsiderá-lo:
5) Exercícios
a
C
d = a + c (em com. de 1) d=a + c (em com. de 2)
1
1110
1001
1000
2
1111
0001
0001
3
1001
0111
0001
4
0110
1111
0110
5
0101
1000
1101
6
0111
1010
0010
Subtração
Na subtração basta realizar a soma dos dois termos com
o segundo termo com o sinal trocado: d= a - c = a + (-c)
a
c
d=a+c
0
0
0
0
1
1 e “pede-um”
1
0
1
1
1
0
Tabela verdade de um meio-subtrator
Subtração
a
c
emprestou
1
d=a+c
pede 1
0
0
0
0
0
0
0
1
1
1
0
1
0
1
1
0
1
1
0
1
1
0
0
1
0
1
0
1
0
0
1
1
0
0
0
1
1
1
1
Tabela verdade de um subtrator completo
1
Números com sinal: representação em
complemento de B
6) Exercícios: Considerando os pares de números binários de 6 bits
indicados abaixo, efetuar a operação de soma entre eles, supondo:
a) Os números estão representados em sinal e magnitude
b) Os números estão representados em complemento de um
c) Os números estão representados em complemento de dois
Para cada caso, interpretar o resultado, isto é, determinar qual é o seu
valor numérico e indicar se este valor é o resultado correto da operação
para a forma de representação sugerida
1) 010101 e 110110
2) 010101 e 010110
3) 110101 e 1101110
Exercícios
7) Exercícios: Converter os números 17 e 15 para binário
usando 6 bits e efetuar a operação de soma entre eles
usando as seguintes representações:
a) sinal e magnitude
b) complemento de um
c) complemento de dois
Aplicar a correção sempre que necessário
8) Exercícios: Repetir o exercício 7 para os números 13 e 8.
Exercícios
9) Exercícios: Usando a técnica de subtração, mostrar como
a)
b)
c)
d)
obter as seguintes diferenças em binários de 6 bits em
complemento de 2 e em complemento de 1.
8-7
15-24
-16-16
20-13
10) Exercícios: Repetir o exercício 7 para os números:
-17 e -15.
Download