Você está na página 1de 26

Sistemas Digitais

Representao Digital de Informao


Joo Paulo Baptista de Carvalho (Prof. Auxiliar do IST)
joao.carvalho@inesc-id.pt

Representao de nmeros em Base b


Base

10: 43510 = 4 x 100 + 3 x 10 + 5 x 1 = 4 x 102 + 3 x 101 + 5 x 100 O nmero resulta da soma de sucessivas potncias de 10, cada uma pesada pelo valor do algarismo correspondente

Uke2010

Sistemas Digitais

Representao de nmeros em Base b (II)


O

mesmo pode ser feito para qualquer base. Por exemplo: Base 7: 11617 = 1 x 73 + 1 x 72 + 6 x 7 + 1 = 1 x 343 + 1 x 49 + 6 x 7 + 1 = 43510 11617 uma forma alternativa de representar 43510

Uke2010

Sistemas Digitais

Representao de nmeros em Base b (III)


Pode

representar-se qualquer nmero inteiro N em qualquer base b:

N = pn "1 # b n "1 + pn "2 # b n "2 + ...+ p1 # b1 + p0 # b 0


n #1

N = $ pj " b j !

j =0

Para a representao de nmeros numa base b, no podem ser utilizados algarismos de valor igual ou superior a b

Uke2010

Sistemas Digitais

Converso entre nmeros de base b para base 10


J

se mostrou como se faz: 11617 = 1 x 73 + 1 x 72 + 6 x 7 + 1 = 1 x 343 + 1 x 49 + 6 x 7 + 1 = 43510

2105= 2 x 52 + 1 x 5 + 0 = 5510

como fazer a converso inversa?

Uke2010

Sistemas Digitais

Converso entre nmeros de base 10 para base b


Mtodo

das divises sucessivas

N = pn "1 # b n "1 + pn "2 # b n "2 + ...+ p1 # b1 + p0 # b 0


N p0 # b 0 = ( pn "1 # b n "2 + pn "2 # b n "3 + ...+ p1 # b 0 ) + b b p0 n "2 n "3 0 = ( pn "1 # b + pn "2 # b + ...+ p1 # b ) + b
O resto da diviso de N por b, p0 O resto da diviso do resultado anterior por b, p1 ...e assim sucessivamente at se obter pn-1

Uke2010 Sistemas Digitais 6

!
!

Converso entre nmeros de base 10 para base b (II)


Mtodo

das divises sucessivas (exemplo):


273 3 = 54 + 5 5 54 4 = 10 + 5 5 10 0 =2+ 5 5 2 2 =0+ 5 5
Sistemas Digitais 7

27310 = ?5 p0 = 3 p1 = 4 p2 = 0 p3 = 2

27310 = 20435

Uke2010

Converso entre nmeros de base 10 para base 2


Mtodo

das divises sucessivas (exemplo):

2010 = ?2
p0 = 0 p1 = 0 p2 = 1 p3 = 0 p4 = 1

2010 = 101002

20 2 00 10 2 0 5 2 1 2 2 0 1 2 1 0

Uke2010

Sistemas Digitais

Base 2 Nmeros binrios

Em computadores e outros sistemas digitais, a representao de nmeros est limitada a 2 valores diferentes (normalmente representados pela diferena de tenso elctrica entre 2 pontos de um circuito electrnico) 0, Low, L, 0V 1, High, H, +5V Assim, num sistema digital um nmero inteiro representado por uma sequncia de algarismos binrios, ou bits (Binary digIT)

110101 1101012 = 1x25+1x24+0x23+1x22+0x21+1x20 = 32+16+4+1 = 5310 010111010110101110101110101110101110101101011101010

Uke2010

Sistemas Digitais

Base 2 Nmeros binrios (II)


Decimal
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Uke2010 Sistemas Digitais

Binrio
0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111 10

Nmeros fraccionrios em base 2


N = p"1 # b "1 + p"2 # b "2 + ...+ p"n # b "n
Exemplo:

!
E

0.10110102 = 1 x 2-1 + 1 x 2-3 + 1 x 2-4 + 1 x 2-6 = 0.5 + 0.125 + 0.0625 + 0.015625 = 0.70312510

como fazer a converso inversa?

Uke2010

Multiplicaes sucessivas por 2 e aproveitar a parte inteira do resultado Na realidade: 0.62710 = 0.p-1p-2p-3p-n 0.10110102= 0.7010 0.62710 x 2 = 1.254; p-1 = 1 Dado que no se deve 0.254 x 2 = 0.508; p-2 = 0 acrescentar preciso ao ... nmero original,10p27, 0.6271010 = 0.1010000012 p [log1027]
Sistemas Digitais 11

Nmeros em bases potncias de 2

difcil para um humano trabalhar em binrio dadas as sequncias bastante longas de 0 e 1 Ex: 153,84510 = 10011001,1101100012 As bases que so potncias de 2 permitem uma representao condensada da base 2 com as quais a converso muito rpida As bases 8 (octal) e principalmente a base 16 (hexadecimal) so as mais comuns
Decimal Octal / Hexadecimal Decimal Hexadecimal

0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

8 9 10 11 12 13 14 15

8 9 A B C D E F 12

Uke2010

Sistemas Digitais

Converses para Hexadecimal

4A6F16= 4 x 163 + 10 x 162 + 6 x 16 + 15 = 4 x 4096 + 10 x 256 + 6 x 16 + 15 = 1905510 4A6F16 = ?2 (16 = 24)

0100 1010 0110 11112 4 A 6 F


Binario Hexadecimal Binario Hexa(decimal)

3478 = ?2

(8 = 23)
7

0000 0001 0010 0011 0100 0101 0110 0111

0 1 2 3 4 5 6 7

1000 1001 1010 1011 1100 1101 1110 1111

8 9 A (10) B (11) C (12) D (13) E (14) F (15)

011 100 1112 3 4

Uke2010

Sistemas Digitais

13

Somas em Base 2 e 16
Semelhantes

s somas em decimal:

! ! !

Uke2010

Sistemas Digitais

14

Multiplicaes em Base 2 e 16

!
Binario Hexadecimal

! ! ! ! !
Uke2010

0000 0001 0010 0011 0100 0101 0110 0111 Sistemas Digitais

! ! !0 1 !2
3 4 5 6 7

Binario

Hexa(decimal)

1000 1001 1010 1011 1100 1101 1110 1111

8 9 A (10) B (11) C (12) D (13) E (14) F (15) 15

Cdigos
At

agora viu-se como possvel representar nmeros inteiros e fraccionrios utilizando simplesmente 0s e 1s (bits) No entanto, para alm dos nmeros, existem muitos mais tipos de informao que necessitam ser tratados num sistema digital: o caso mais bvio a representao de texto...

Uke2010

Sistemas Digitais

16

Codificao

A soluo para a representao de um determinado tipo de informao a sua codificao utilizando os bits que forem necessrios Exemplo: Pretende-se representar o andar em que se encontra um elevador num prdio de 6 pisos. So necessrios pelo menos 3 bits
Andar
2 Cave 1 Cave R/C 1 Andar 2 Andar 3 Andar

Codificao
000 001 010 011 100 101

Comprimento do cdigo

Palavra do cdigo
17

Uke2010

Sistemas Digitais

Codificao

Para que um cdigo seja vlido apenas necessrio que no existam configuraes repetidas De resto, a escolha das codificaes livre e pode depender dos mais diversos critrios
Andar Codificao1
000 001 010 011 100 101

Codificao 2
110 111 000 001 010 011

Codificao 3
0011 0101 1001 0110 1010 1100

2 Cave 1 Cave R/C 1 Andar 2 Andar 3 Andar

Uke2010

Sistemas Digitais

18

Cdigos Numricos

O cdigo numrico mais simples consiste na representao de um nmero inteiro por uma palavra de cdigo que a sua representao em binrio. Se cada palavra tem um comprimento constante, o cdigo denomina-se Cdigo Binrio Natural (CBN)
CBN de 4 bits
0000 0001 0010 0011 0100 0101 0110 0111

Nmero
0 1 2 3 4 5 6 7
Uke2010

Nmero
8 9 10 11 12 13 14 15

CBN de 4 bits
1000 1001 1010 1011 1100 1101 1110 1111
19

Sistemas Digitais

Cdigos Numricos - BCD


O

cdigo BCD Binary Coded Decimal, permite representar cada dgito de um nmero decimal pelo seu equivalente binrio:
BCD
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001

Nmero
0 1 2 3 4 5 6 7 8 9
Uke2010

Exemplo:

27(10) = 0010 0111(BCD) 2 7


De notar que no existe correspondncia entre BCD e base 2:

27(10) = 11011(2) 0010 0111(BCD) = 27(10) 0010 0111(2) = 39(10)


Sistemas Digitais 20

Cdigos Reflectidos
Cdigo

Binrio Reflectido ou cdigo de Gray: nmeros sucessivos so codificados por palavras que diferem apenas um bit entre si
Nmero
0 1 2 3 4 5 6 7

CBR de 3 bits
000 001 011 010 110 111 101 100

Uke2010

Sistemas Digitais

21

Cdigos Alfanumricos

Representao de texto.Ex: Cdigo ASCII (American Standard Code for Information Exchange) 7 bits
001 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 010 SP ! " # $ % & ' ( ) * + , . / 011 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 100 @ A B C D E F G H I J K L M N O 101 P Q R S T U V W X Y Z [ \ ] ^ _ 110 ` a b c d e f g h i j k l m n o 111 p q r s t u v w x y z { | } ~ DEL
22

b6b5b4 b3b2b1b0 000 0000 NUL 0001 STH 0010 STX 0011 ETX 0100 EOT 0101 ENQ 0110 ACK 0111 BEL 1000 BS 1001 HT 1010 LF 1011 VT 1100 FF 1101 CR 1110 SO 1111 SI
Uke2010

Sistemas Digitais

Cdigo ASCII

Em ASCII, a letra A codificada como 1000001 Em ASCII, Sistemas Digitais codifica-se como 1010011 1101001 1110011 1110100 1100101 1101101 1100001 1110011 0100000 1000100 1101001 1100111 1101001 1110100 1100001 1101001 1110011 prefervel codificar o ASCII em hexadecimal: Sistemas Digitais = 53h 69h 73h 74h 65h 6Dh 61h 73h 20h 44h 69h 67h 69h 74h 61h 69h 73h ...mas igualmente possvel codificar em decimal: A = 1000001b = 41h = 65d De notar que o ASCII no contm caracteres comuns em Portugus como por exemplo ...

Uke2010

Sistemas Digitais

23

Extenses ao Cdigo ASCII


ISO-8859-1:

Extenso do Cdigo ASCII a 8 bits que permite representar os caracteres prprios existentes nas lnguas da Europa Ocidental, como por exemplo , , , , , etc. UNICODE: Extenso a 16 bits que pretende codificar todos os caracteres de todas as lnguas mantendo a compatibilidade com o ASCII
Uke2010 Sistemas Digitais 24

Bits, bytes, ks,...


0 , 1 so bits A um conjunto de 8 bits chama-se byte A um conjunto de 4 bits chama-se nibble (cada algarismo BCD um nibble) unidade mnima processada por um sistema digital chama-se palavra (word) por exemplo, o processador Intel 8080 tem palavras de 8 bits, o processador Motorola 68000 processa palavras de 16 bits, e o Pentium palavras de 32 bits Os sistemas digitais necessitam de grandes quantidades de bits para representar informao, sendo por isso comum utilizar mltiplos como kbyte=210=1024bytes, Mbyte=220bytes, Gbyte=230bytes, etc.
Sistemas Digitais 25

Uke2010

Bibliografia
Arroz,G.,

Monteiro,J.C., Oliveira,A., Arquitectura de Computadores Dos Sistemas Digitais aos Microprocessadores , Captulo 1, 2 Edio, IST Press, 2009 Srro,C. Sistemas Digitais: Fundamentos Algbricos, IST Press, 2003

Uke2010

Sistemas Digitais

26

Você também pode gostar