View
247
Download
4
Category
Preview:
DESCRIPTION
Â
Citation preview
CURSO PROFISSIONAL DE TÉCNICO GESTÃO DE EQUIPAMENTOS INFORMÁTICOS ANO LETIVO 2012-2013 – 1ºANO – TURMA B
Sistemas Digitais e Arquitetura de Computadores Ficha de Apoio M1.2: Operações Aritméticas em binário
PARTE I - SOMA
Para a soma de dois números binários, usamos o mesmo método da soma de números decimais (ou seja,
somamos os dígitos coluna a coluna, a contar da direita, e vamos passando valor de transporte de coluna
em coluna, se ocorrer).
Por exemplo, na soma de números decimais, na conta 12 + 19, o método de cálculo é o seguinte:
i) 2+9 =11,
logo escrevemos 1 na 1ªcoluna à direita e colocamos 1 no transporte (“e vai um”)
ii) Na coluna seguinte, somamos 1 (que vem do transporte da coluna anterior) + 1 + 1 = 3
iii) E assim, sucessivamente …
Na soma binária, o método é o mesmo, com a diferença de que o transporte ocorre sempre que o resultado
da soma dos dígitos de uma coluna é maior que 1.
Assim, temos que usar o método descrito e em cada passo aplicar as seguintes regras (na soma coluna a
coluna):
Dígitos Resultado Transporte
0 + 0 0
0 + 1 1
1 + 0 1
1 + 1 0 1
1 + 1 (com 1 de transporte da coluna anterior)
1 1
Alguns exemplos:
1 1 1 1 1 1
1 1 1 0 0 1 1 1 1 1 0 + 1 1 + 1 0 + 1 + 1 0 0
1 1 0 1 1 0 1 0 0 0 1 0 1 0
1 1 1 1 1 1 1
1 1 0 0 1 1 0 0 1 + 1 1 0 0 1 1 1 1
1 0 0 1 1 0 1 0 0 0
Clica na figura para ver outro exemplo em vídeo:
PARTE II – SUBTRAÇÃO
Para a subtração de dois números binários, vamos usar nesta disciplina um método com códigos de
complemento. Assim, termos em cada subtração de calcular os complementos 1 (C1) e 2 (C2) do segundo
termo.
Para obtermos o complemento de 1 (C1) de um número binário, basta inverter (trocar) os bits deste
número, ou seja: se A = 0111 (2), então C1(A) = 1000(2).
O Complemento de 2 (C2) é calculado somando 1 ao complemento de 1 (C1) do número: por exemplo, se A
= 0111 (2); C1(A) + 1 = C1(0111) + 1 = 1000 + 1 = 1001
Uma vez que já sabemos calcular C1 e C2, o método a utilizar para a subtração é o seguinte:
Passos para a subtração binária (com 2 termos) Exemplo: 1011 - 111
1. Alinhar à direita os dois termos da subtração
2. Completar o de menor tamanho com zeros à esquerda (para ficarem do mesmo tamanho)
111 = 0111
3. Calcular o complemento para 1 do segundo termo (passando os 0 a 1 e os 1 a 0)
C1(0111) = 1000
4. Calcular o complemento para 2 do segundo termo (somando 1 ao complemento para 1)
C2(0111) = C1(0111) + 1 = 1000 + 1 = 1001
5. Somar o primeiro termo ao complemento para 2 do segundo termo A + C2(B) =1011 + 1001
NOTA: Para convertermos um número binário negativo para decimal, calculamos o seu complemento para 2 antes da conversão.
6. A soma resultante vai dar o resultado da subtração A-B 1011+1001 = 10100
7. Se o resultado tiver mais um dígito do que as parcelas, remover o bit mais significativo ( o 1 mais à esquerda)
10100
8. Se não tiver mais um dígito, então o resultado da subtração é um número negativo (e coloca-se um (-) antes do número).
Exemplo 1:
1000 – 0011
Número de dígitos igual, por isso não é preciso acrescentar nenhum zero à esquerda
Vamos ter que fazer 1000 – C2 (0011)
Para obtermos C2 (0011), temos que calcular C1 (0011)
Assim, C1 (0011) = 1100 (passam-se os 0 a 1 e os 1 a 0)
Calculamos C1:
Invertemos os dígitos (0 passam a 1, e 1 passam a 0)
Assim: C1(0011) = 1100
Calculamos C2:
C2 (x) = C1 (x) +1 1100
+ 1
1101
Somamos ao primeiro termo C2 (segundo termo) 1
1000
+ 1101
Neste caso, como o número de bits do resultado é maior do que o número de bits dos termos, eliminamos o bit mais significativo (o mais à esquerda)
10101
Se não tiver mais um dígito, então o resultado da subtração é um número negativo (e coloca-se um (-) antes do
número).
Exemplo 2:
101100 – 110
Número de dígitos diferente – o primeiro termo tem 6 dígitos, o segundo termo tem 3 dígitos –, por isso
acrescentamos três zeros à esquerda do segundo termo:
101100 – 000110
Em seguida:
Calculamos C1 do segundo termo:
Invertemos os dígitos (0 passam a 1, e 1 passam a 0)
Assim: C1(000110) = 111001
Calculamos C2:
C2 (x) = C1 (x) +1
1 111001
+ 1
111010
Somamos ao primeiro termo o C2 do segundo termo 11
101100
+ 111010
Neste caso, como o número de bits do resultado é maior do que o número de bits dos termos, eliminamos o bit mais significativo (o mais à esquerda)
1100110
Se não tiver mais um dígito, então o resultado da subtração
é um número negativo (e coloca-se um (-) antes do número).
Exemplo 3:
100 – 1110
Número de dígitos diferente – o primeiro termo tem 3 dígitos, o segundo termo tem 4 dígitos –, por isso
acrescentamos um zero à esquerda do primeiro termo:
0100- 1110
Em seguida:
Calculamos C1 do segundo termo:
Invertemos os dígitos (0 passam a 1, e 1 passam a 0)
Assim: C1(1110) = 0001
Calculamos C2:
C2 (x) = C1 (x) +1
1 0001
+ 1
0010
Somamos ao primeiro termo o C2 do segundo termo
0100
+ 0010
Neste caso, como o resultado não tem mais um dígito que os termos, o resultado da subtração é um número negativo (e coloca-se um (-) antes do número).
(-) 0110
Se o número de bits do resultado fosse maior do que o número de bits dos termos, eliminávamos o bit mais significativo (o mais à esquerda) e o resultado seria um número positivo
Exercícios:
1) Aplicando o método de complementos, efetua as seguintes subtrações (NOTA: faz e apresenta todos os
cálculos)
a) 1111100 – 11011 Clica para ver resolução:
b) 1110000011 –111
c) 101010 -10111
d) 11100001 – 111000000
e) 111000 - 11
FICHAS DE TRABALHO
Tens aqui algumas ligações para fichas de trabalho sobre a matéria deste módulo. Aproveita para resolver
alguns exercícios. Vais ver como tudo se torna mais fácil.
Se tiveres dúvidas, envia mail, SMS ou coloca questões na aula.
Ficha 1
Ficha 2
Ficha 3
Recommended