Você está na página 1de 35

Escola de Ciências Exatas

e da Computação
SISTEMAS DIGITAIS para
COMPUTAÇÃO
AULA 14 Sistemas de Numeração e Códigos
• Conversões entre sistemas numéricos

Aula 15 Operações Aritméticas

• Adição Binária;
• Subtração Binária
• Aritmética Hexadecimal
Sistemas de Numeração
• Exemplos de representação numérica:

1) 1532 d = 1000 + 500 + 30 + 2


1) 1532 d = 1 x 103 + 5 x 102 + 3 x 101 + 2 x 100
2) 100111 2 = 1x25 + 0x24 + 0x23 + 1x22 + 1x21 + 1x20

um número N em qualquer sistema numérico tem 


Representação por Valores Ponderados pela posição:

n -1 n à algarismos
N = åA i
i
b i
b
à posição
à base
i =0
A à algarismo
Sistemas de Numeração
FIGURA 1-2 Valores posicionais de um número decimal expresso
como potências de 10.

Sistemas Digitais: Princípios e Aplicações Capítulo 1


Ronald J. Tocci e Neal S. Widmer Prentice Hall
Sistemas de Numeração
FIGURA 1-4 Valores posicionais de um número binário
expresso como potências de 2.

Sistemas Digitais: Princípios e Aplicações Capítulo 1


Ronald J. Tocci e Neal S. Widmer Prentice Hall
Sistemas de Numeração
Sistema Algarismos

Decimal à base 10 – 0 1 2 3 4 5 6 7 8 9
Hexadecimal à base 16 – 0 1 2 3 4 5 6 7 8 9 A B C D E F
Octal à base 8 – 0 1 2 3 4 5 6 7
Binário à base 2 – 0 1
Cada b(base) unidades
Principio do Posicionamento: de uma dada ordem ( i )
formam uma unidade
Exemplo de contagem: de ordem ( i + 1 )

Base 5 à 0,.....,4, 10, 11, ...., 14, 20, ...24, 30...


Base 3 à 0, 1 ,2, 10, 11, 12, 20, 21, 22, 0...
Base 10 à 0,.....,9, 10, 11, ...19, 20, ...29, 30...
Sistemas de Numeração
FIGURA 1-3 Contagem decimal.

Sistemas Digitais: Princípios e Aplicações Capítulo 1


Ronald J. Tocci e Neal S. Widmer Prentice Hall
Sistemas de Numeração
FIGURA 1-5 Seqüência de contagem binária.

 0. 23 + 0. 22 + 0.21 + 0.20 = 0
 0. 23 + 0. 22 + 0.21 + 1.20 = 1
 0. 23 + 0. 22 + 1.21 + 0.20 = 2
 0. 23 + 0. 22 + 1.21 + 1.20 = 3
 0. 23 + 1. 22 + 0.21 + 0.20 = 4
 0. 23 + 1. 22 + 0.21 + 1.20 = 5
 0. 23 + 1. 22 + 1.21 + 0.20 = 6
 0. 23 + 1. 22 + 1.21 + 1.20 = 7
 1. 23 + 0. 22 + 0.21 + 0.20 = 8
 1. 23 + 0. 22 + 0.21 + 1.20 = 9
 1. 23 + 0. 22 + 1.21 + 0.20 = 10
 1. 23 + 0. 22 + 1.21 + 1.20 = 11
 1. 23 + 1. 22 + 0.21 + 0.20 = 12
 1. 23 + 1. 22 + 0.21 + 1.20 = 13
 1. 23 + 1. 22 + 1.21 + 0.20 = 14
 1. 23 + 1. 22 + 1.21 + 1.20 = 15

Sistemas Digitais: Princípios e Aplicações Capítulo 1


Ronald J. Tocci e Neal S. Widmer Prentice Hall
Sistemas de Numeração
Conversões entre sistemas :
Conversão D  B Exemplo 1: 23,25 d = ( ? ) b
Parte inteira:
1º processo: divisão sucessiva pela base, até o quociente = 0

o numero binário é formado pelos restos das divisões lidos do


último para o primeiro (o mais significativo é o último resto)

23 2
03 11 2
1 1 5 2
1 2 2
0 1 2
1 0
2310 = 1 0 1 1 1 2
Sistemas de Numeração
Conversões entre sistemas :
Conversão D  B Exemplo 1: 23,25 d = ( ? ) b
Parte inteira:

2º processo: decompor em potência de 2

23 - 2 i (mais próxima)
i
i 2 23 -16 = 7
0 1 7-4= 3
1 2 3-2= 1
2 4 1-1= 0
3 8 '23
4 16 i 4 3 2 1 0
5 32 1 0 1 1 1
6 64 2i 16 4 2 1
7 128 4 3 2 1 0
2 2 2 2 2
8 256
9 512 2310 = 1 0 1 1 1 2
10 1024
Sistemas de Numeração
Conversões entre sistemas :
Conversão D  B Exemplo 1: 23,25 d = ( ? ) b
1º processo: multiplicação sucessivas pela base,
Parte Fracionária:
até nº após a virgula = 0 (zerar parte fracionária)

o numero binário fracionário é formado pelos resultados inteiros das


multiplicações sendo o primeiro inteiro (mais significativo) é primeiro
após a vírgula.

0,25 d = ?
1 2
1 0,25 d = 0, 0 1 2
0,25 x 2 = 0 , 5
2
23d = 1 0 1 1 1 2
0,5 x 2 = 1 , 0

resposta: 23,25 d = 10111,01 2


Sistemas de Numeração
Conversões entre sistemas :
Conversão D  B Exemplo 2: 0,675 d = ( ? ) b
Parte Fracionária: processo: multiplicação sucessivas
1
0,675 d =?b
0,675 x 2 = 1 , 35
2 1 2 3 4 5 6 7
0,35 x 2 = 0 , 70 0,625 d = 0, 1 0 1 0 1 1 0.0 1 1 0... 2
3
0,70 x 2 = 1 , 40 Conclusão: Nem sempre é possível
4 obter resultados exatos, quantiza-se
0,40 x 2 = 0 , 80 (truncando)
5
0,80 x 2 = 1 , 60 • onde devemos parar ?
6 • depende do nº de bits reservados
0,60 x 2 = 1 , 20 para parte fracionária
7
0,20 x 2 = 0 , 40
4 Com 16 bits é uma boa representação.
0,40 x 2 = 0 , 80
Sistemas de Numeração H
B
Conversões entre sistemas : 0 0 0 0 0
Conversão (Direto da Tabela) 0 0 0 1 1
Hexadecimal Binário 0 0 1 0 2
0 0 1 1 3
Exemplo 1: 10011111 b 0 1 0 0 4
0 1 0 1 5
Separar parte inteira de 4 em 4
0 1 1 0 6
da direita para esquerda, e lê 0 1 1 1 7
diretamente na tabela 1 0 0 0 8
1 0 0 1 9
1001 1111 b = 9 FH 1 0 1 0 A
1 0 1 1 B
1 1 0 0 C
Exemplo 2: 1010110100111 b 1 1 0 1 D
1 1 1 0 E
1 0101 1010 0111 b 1 1 1 1 F
1 5 A 7 H
Sistemas de Numeração H
B
Conversões entre sistemas : 0 0 0 0 0
Hexadecimal Binário 0 0 0 1 1
0 0 1 0 2
Exemplo 3: 110011111,1100100001 b 0 0 1 1 3
0 1 0 0 4
Separar parte inteira de 4 em 4 da direita 0 1 0 1 5
para esquerda, e lê diretamente na tabela 0 1 1 0 6
0001 1001 1111, b  110011111, 0 1 1 1 7
1 9 F ,H 1 0 0 0 8
1 0 0 1 9
Separar parte fracionária de 4 em 4 da 1 0 1 0 A
esquerda para direita, e lê diretamente 1 0 1 1 B
na tabela) 1 1 0 0 C
,1100100001 b
1 1 0 1 D
,1100 1000 0100 b 1 1 1 0 E
1 1 1 1 F
, C 8 4 H
110011111,1100100001 b = 19F,C84H
Sistemas de Numeração
Conversões entre sistemas:
Exercício para casa preencher a tabela à seguir, fazendo
a respectivas conversões entre os sistemas. A
SOLUÇÃO DA 1ª LINHA ESTA NA APOSTILA AULA 13

2 3 5 8 10 16
1010101101,1101
120,012
403,22
72,24
320,52
3A,D

2 3 5 8 10 16
1010101101,1101 221101,2102 10220,4012 1255,6400 685,8125 2AD,D
1111,0010 120,0120 30,0430 17,1366 15,1852 F,2
1100111,0111 10211,1102 403,2200 147,3656 103,4800 67,7
111010,0101 2011,0221 213,2140 72,2400 58,3125 3A,5
101000000,1000 102212,1120 2240,2300 500,4121 320,5200 140,8
111010,1101 2011,2102 213,4012 72,6400 58,8125 3A,D
SISTEMAS DIGITAIS para COMPUTAÇÃO
- REF. DO PROGRAMA:
Circuitos Combinacionais

Aula 15 Operações Aritméticas

• Adição Binária;
• Subtração Binária
• Aritmética Hexadecimal

Referência Livro Texto: Capítulo 2 – 2.1 a 2.4


SOMA BINÁRIA  XOR
0+0=0
0 1
0+1=1+0=1 0 0 1
1 + 1 = 0 e vai 1 1 1 0*
i
* vai 1 i 2
1 + 1 + 1 = 1 e vai 1 0 1
1 2
o símbolo + aqui é o sinal mais de adição 2 4
3 8
Exemplo 1: (1001 1101 + 110 0101 ) b = (?) 4 16
Estouro / 1 111 1 1 1 Hexa Dec. 5 32
6 64
overflow 1001 1101 9D 157
+ 0110 0101 7 128
65 101 8 256
1 00 00 0010 102 258 9 512
8 7654 3210 i 10 1024
1001 1101 128+0+0+16
128 +0+0+16 + 8+4+0+1= 157
0110 0101 0+64+32+0 + 0+4+0+1= 101
1 0000 0010 256+ 0 + 0 + 0 +0 + 0+0+2+0= 258
SOMA BINÁRIA  XOR
EXERCÍCIO1: Converter para binário, somar e
conferir em decimal (5A + B7) H = (?) B
Hexa Estouro 1 111 1 11 Dec.
5A 0 1 0 1 1 0 1 0 64 + 16 +8 + 2 = 90
+
B7 1 0 1 1 0 1 1 1 128+32+16+4+2+1=183
111 1 00 01 0001 256 + 16 +1= 273
128 64 32 16 8 4 2 1 CONFERINDO PELO OUTRO
0 1 0 1 1 0 1 0 PROCESSO

1 2 5 11 22 45 90
x2 128 64 32 16 8 4 2 1
0 2 4 10 22 44 90 1 0 1 1 0 1 1 1
2 5 11 22 45 91 183
x2
2 4 10 22 44 90 182
ARITMÉTICA HEXADECIMAL
Exemplo: Somar direto em hexa:
(4A + 2E ) H = ? ; e para conferir  Converter para
binário, somar e converter para Hexa

Hexa Estouro 0 1 11
4A 0100 1010
+
2E 0010 1110
78 01 11 1000

1 10
4A
14 +
2E 24
78 -16 (para achar o que passou da base)
8 e vai 1
SUBTRAÇÃO BINÁRIA
0- 0=0 0 1
0 0 1*
1- 0=1
1 1 0
1- 1=0 * tomar 1
0 - 1 = 1 e tomar 1

Exemplo 1: (1010 1110 - 110 1011) b = (?)

02 0 0 2 Hexa Dec.
1010 1110 AE 174
- 0110 1011 6B 107
01 00 0011 43 67
SUBTRAÇÃO BINÁRIA
Exemplo 2: (1 0000 - 1101) b = (?)

0 1 1 1 2 Hexa Dec.
1 0000 10 16
- 0 1101 0D 13
Prova + ________
0 0011 03 03
real 1 0000

Importante: os computadores não utilizam subtração


binária desta forma, portanto estes exemplos são
apenas ilustrativos.
Os computadores usam a somente Soma binária, portanto,
para subtrair devem usar o sinal do numero,
por exemplo: A - B  A + (- B)
NUMEROS SINALIZADOS
Computadores digitais  para representação de sinal do
no podem usar o Sinal antes da Magnitude, isto é: o bit à
esquerda (MSB - bit de maior significância) representa o
sinal e os outros bits a magnitude do número. Sendo:
MSB = 0 numero positivo

Exemplos: 0110 bMSB


= + 6=d1 número
1110negativo
b
=-6d
Com: 4 bits = 2 4  Representa-se 16 números Sinalizados
 - 8,...,-1,0, ..., 7
5 bits = 2 5  Representa-se 32  - 16,...,-1, 0, ..., 15
n bits = 2 n  -2 n -1
,..., 0, ..., 2 n -1 - 1

Sistema Sinal antes da Magnitude: normalmente não é


usado pela complexidade de implementação dos circuitos.
FIGURA 6-1 Representação de números com sinal
na forma sinal-magnitude.

Sistemas Digitais: Princípios e Aplicações Capítulo 6


Ronald J. Tocci e Neal S. Widmer Prentice Hall
NUMEROS SINALIZADOS
Definição do Sinal nos computadores
1a tentativa: SM = sinal magnitude

0110 b = + 6 d
Inverte o bit mais significativo p/ representar o no. negativo
1110 b = - 6 d

Então: (+6) + (- 6) = 0 ?
111
0 1 1 0 (+6) +
SM  Não serve
1 1 1 0 (- 6)
1 0 1 0 0  diferente de zero
NUMEROS SINALIZADOS
Definição do Sinal
2a tentativa: SMC1 = Sinal Magnitude Complemento a 1

0110 b = + 6 d
Inverte os bits um a um p/ representar o no. negativo
1001 b = - 6 d

Então: (+6) + (- 6) = 0 ?

0 1 1 0 (+6) + SMC1  Não serve


1 0 0 1 (- 6)
1 1 1 1  diferente de zero
NUMEROS SINALIZADOS
Definição do Sinal
3a tentativa: SMC2 = sinal magnitude complemento a 2
 SMC1+1 (Campo constante)
0110 b = + 6 d
Para representar o n. negativoForma-se o complemento a 1 e
depois soma-se 1 (na posição do bit menos significativo - LSB)

0 1 1 0 (+6) Então: (+6) + (- 6) = 0 ?  OK


1
1 1 1
+ 1 0 0 1  SMC1
0 1 1 0 (+6)
+0001 + 1 0 1 0 (- 6)
1 0 1 0  SMC2 (- 6) 1 0 0 0 0 Resultado = zero
(positivo)
Daí, na “subtração” o Estouro/overflow foi definido para
indicar o sinal do resultado: estouro = 0 (num. Negativo)
= 1 (num. Positivo)
Sistema de complemento a 2  SMC 2
SMC 2 = Sinal Magnitude Complemento a 2 
SMC 1+1 (Campo constante)
Para representar o n. negativoForma-se o complemento a 1 e
depois soma-se 1 (na posição do bit menos significativo - LSB)

Ex: A = 45  – A = ? A 101101 b = + 45 d

1 0 1 1 0 1 (+45)

+ 0 1 0 0 1 0  SMC1
+000001
0 1 0 0 1 1  SMC2 (- 45)
“SUBTRAÇÃO”  COM COMPLEMENTO A 2

EXEMPLO: (+8) + (- 8) = 0 ?

1 0 0 0 (+8)
111
1
+ 0 1 1 1  SMC1
1 0 0 0 (+8)
+0001 + 1 0 0 0 (- 8)
1 0 0 0  SMC2 (- 8) 1 0 0 0 0 Resultado = zero
(positivo)
“subtração” o Estouro/overflow = 0 (num. Negativo)
= 1 (num. Positivo)
Subtrair usando SMC2
Ex: A = 7 e B = 6  A – B = ? B 0110 b = + 6 d

0 1 1 0 (+6)
1 Então: (+7) + (- 6) = 1 ?  OK
+ 1 0 0 1  SMC1
1 1 1
+0001 0 1 1 1 (+7)
1 0 1 0  SMC2 (- 6) + 1 0 1 0 (- 6)
1 0 0 0 1 Resultado = 1
(positivo)
Daí, na “subtração” o Estouro/overflow foi definido para
indicar o sinal do resultado: estouro = 0 (num. Negativo)
= 1 (num. Positivo)
Subtrair usando SMC2
• Um numero maior - menor
a) 36d – 25d = ( ? ) B
obs: os números
para serem
36d = 1 0 0 1 0 0 subtraídos devem
25d = 00 1 1 0 0 1 36 2 ter mesma
magnitude
16 18 2
0 0 9 2
25 2 1 4 2
05 12 2 0 2
1 2
0 6 2 2
0 1
0 3 2 0
1
1 1 2
1 0
Subtrair usando SMC2
• Um numero maior - menor
a) 36d – 25d = ( ? ) B
obs: os números
para serem
36d = 1 0 0 1 0 0 subtraídos devem
25d = 00 1 1 0 0 1 ter mesma
magnitude
Mudar o sinal de 25
0 1 1 0 0 1 (25) 1 1
100100 (36)
+ 1 0 0 1 1 0  SMC1
+ 1 0 0 1 1 1 (- 25)
+ 1
1 0 0 1 0 1 1 = +11
1 0 0 1 1 1  SMC2 (- 25)
Estouro / overflow = 1 (num. Positivo)
= 0 (num. Negativo)
Subtrair usando SMC2
Um numero Menor - Maior div por 2
36 resto 25 resto
b) 25d – 36d = ( ? ) B 18 0 12 1
9 0 6 0
25d = 00 1 1 0 0 1 obs: os números 4 1 3 0
para serem 2 0 1 1
36d = 1 0 0 1 0 0 subtraídos devem 1 0 0 1
ter mesma 0 1
Mudar o sinal de 36
magnitude 0 1 1
1 0 0 1 0 0 (36) 011001 (25)
1 1
+ 0 1 1 0 1 1  SMC1 + 0 1 1 1 0 0 (- 36)
+ 1 0 1 1 0 1 0 1 = - 11

0 1 1 1 0 0  SMC2 (- 36) 0 0 1 0 1 0 SMC 1


+ 1 SMC 1
overflow = 0 (num. Negativo)
0 0 1 0 1 1  11 SMC 2
é necessário fazer o complemento a 2 para encontrar
o numero ou seja o seu módulo |-n|
Subtrair usando SMC2
Hexadecimal 0 0 1 0 1 1 1 0 (2E)
c) 4AH – 2EH = ( ? ) H 1 1 0 1 0 0 0 1  SMC1
4A H = 0 1 0 0 1 0 1 0 + 1
2E H = 0 0 1 0 1 1 1 0 1 1 0 1 0 0 1 0  SMC2 (- 2E)

1 1 1

0 1 0 0 1 0 1 0  4A
+ 1 1 0 1 0 0 1 0  - 2E
1 0 0 0 1 1 1 0 0 = + 1C

overflow = 1 (num. Positivo)


Exercícios em sala
Converter para binário, executar a soma e conferir
em decimal:
1) 1 9 F H
+ 3AD H
2) 1 4 0 H
+ 67 H

Converter para binário, executar a subtração


USANDO COMPLEMENTO A 2 e conferir em decimal:
1) 1 9 F H
- 3AD H 2) 1 4 0 H
- 67 H

Para casa
• Ler e Responder as questões e problemas do
Capítulo 2: 2.1 a 2.4
PARA CASA

• (No anexo exercícios Aulas 09 a 18)


• Exec 1 aula 9: Esquematizar um Circuito T / C com
Quatro entradas (bits) A B C e D
• Exerc 2 aula 9: Esquematizar um circuito
verificador de igualdade de dois num. de 4 bits
• Exercício aula 10 preencher a tabela à seguir,
fazendo a respectivas conversões entre os
sistemas.
2 3 5 8 10 16
1010101101,1101
120,012
403,22
72,24
320,52
3A,D

Você também pode gostar