Professional Documents
Culture Documents
Mdulo 1
Sistemas de Numerao
30 Horas
SDAC
Sistemas Digitais e Arquitectura de Computadores
ndice
Contedo
..................................................................................................................................................... 4 Objectivos de Aprendizagem ....................................................................................................... 4 Estrutura de um sistema de Numerao. ...................................................................................5 Noo de smbolo e noo de nmero como uma sequncia de smbolos, onde os smbolos tm significncia posicional. ......................................................................................................5 Frmula geral de significncia posicional num sistema de base B. ................................................ 6 Principais Sistemas de Numerao utilizados ............................................................................... 6 Converso de nmeros representados em qualquer base para a base decimal, usando a frmula geral de significncia posicional................................................................................................... 10 Exerccios .................................................................................................................................... 11 Converso de nmeros em decimal para outras bases de numerao atravs do mtodo das divises sucessivas. ..................................................................................................................... 12 Exerccios .................................................................................................................................... 12 Exerccios .................................................................................................................................... 13 Exerccios .................................................................................................................................... 14 Exerccios .................................................................................................................................... 15 Exerccios ....................................................................................................................................16 Resumo ....................................................................................................................................... 17 .................................................................................................................................................... 17 Operaes aritmticas (adio e subtraco) em qualquer base (base binria em particular). ..... 18 Somar em binrio .................................................................................................................... 18 Exerccios .................................................................................................................................... 18 Somar em Octal (Em Base 8) ...................................................................................................19 Exerccios ....................................................................................................................................19 Subtrair em binrio .................................................................................................................. 21 Exerccios .................................................................................................................................... 21 Multiplicao no sistema binrio.............................................................................................. 21 Exerccios ................................................................................................................................... 22 Notao de nmeros Binrios Positivos e Negativos ............................................................... 23 Exerccios .................................................................................................................................... 23 2
SDAC
Sistemas Digitais e Arquitectura de Computadores
O complemento a 1 ................................................................................................................ 24 O complemento a 2 .................................................................................................................25 Adio e subtraco de nmeros em cdigo de complementos. ..............................................25 Bibliografia ................................................................................................................................. 28
SDAC
Sistemas Digitais e Arquitectura de Computadores
Objectivos de Aprendizagem
Conhecer a estrutura de um Sistema de Numerao e os principais Sistemas de Numerao Efectuar a converso de nmeros entre os vrios sistemas de numerao. Efectuar operaes aritmticas (adio e subtraco) em qualquer base de numerao. Representar nmeros relativos (positivos e negativos) em cdigo de complementos.
SDAC
Sistemas Digitais e Arquitectura de Computadores
Noo de smbolo e noo de nmero como uma sequncia de smbolos, onde os smbolos tm significncia posicional.
Um numeral um smbolo ou grupo de smbolos que representa um nmero em um determinado instante da evoluo do homem. Tem-se que, numa determinada escrita ou poca, os numerais diferenciaram-se dos nmeros do mesmo modo que as palavras se diferenciaram das coisas a que se referem. Os smbolos "11", "onze" e "XI" (onze em latim) so numerais diferentes, representativos do mesmo nmero, apenas escrito em idiomas e pocas diferentes. Este artigo debrua-se sobre os vrios aspectos dos sistemas de numerais. Ver tambm nomes dos nmeros. Um sistema de numerao, (ou sistema numeral) um sistema em que um conjunto de nmeros representado por numerais de uma forma consistente. Pode ser visto como o contexto que permite ao numeral "11" ser interpretado como o numeral romano para dois, o numeral binrio para trs ou o numeral decimal para onze. Em condies ideais, um sistema de numerao deve: Representar uma grande quantidade de nmeros teis (ex.: todos os nmeros inteiros, ou todos os nmeros reais); Dar a cada nmero representado uma nica descrio (ou pelo menos uma representao padro); Refletir as estruturas algbricas e aritmticas dos nmeros.
Por exemplo, a representao comum decimal dos nmeros inteiros fornece a cada nmero inteiro uma representao nica como uma sequncia finita de algarismos, com as operaes aritmticas (adio, subtrao, multiplicao e diviso) estando presentes como os algoritmos padres da aritmtica. Contudo, quando a representao decimal usada para os nmeros racionais ou para os nmeros reais, a representao deixa de ser padronizada: muitos nmeros racionais tm dois tipos de numerais, um padro que tem fim (por exemplo 2,31), e outro que repete-se periodicamente (como 2,30999999...). A representao numrica comum utiliza a base 10. Isso significa que existem 10 smbolos (ou dgitos) diferentes, representados pelos smbolos de 0 a 9. Utilizando apenas estes algarismos podemos representar qualquer nmero. Comeando pelos nmeros mais simples, representveis apenas por um dgito, temos: 0, 1, 2, , 9, 10
SDAC
Sistemas Digitais e Arquitectura de Computadores
O termo geral para o valor de um nmero em qualquer base na posio i tem o peso da base , ou seja vale: di x base Exemplos: 25 = 210 + 5 367 = 3102 + 610 + 7 2745 = 2103 + 7102 + 410 + 5
i
A representao numrica comum utiliza a base 10. Isso significa que existem 10 algarismos (ou dgitos) diferentes, representados pelos smbolos de 0 a 9. Utilizando apenas estes algarismos podemos representar qualquer nmero. Comeando pelos nmeros mais simples, representveis apenas por um dgito, temos: 0, 1, 2, , 9, 10
SDAC
Sistemas Digitais e Arquitectura de Computadores
Ao passar de 9 para 10 ocorre o primeiro incidente na contagem: esgotou-se a capacidade de representao de nmeros apenas com um dgito passamos a usar dois dgitos, em que o da esquerda tem maior peso neste caso tem o seu valor multiplicado por 10, ou seja, pelo valor da base de numerao utilizada; Continuando a contagem, temos: , 10, 11, 12, , 18, 19, 20 Ao chegar a 19 esgotaram-se os dgitos na posio com menor peso. Por isso aumenta-se 1 na posio seguinte; j contamos duas vezes a base, ou seja, vamos em 210. Retomando a contagem: , 20, 21, 22, , 97, 98, 99, 100 Ao passar de 99 para 100 esgotaram-se os dgitos na segunda posio; isso significa que contmos 10 vezes a base, ou seja 1010 = 102 . Um dgito na 3 posio vale portanto a base ao quadrado. , 100, 101, , 998, 999, 1000, A partir de 1000, o dgito na quarta posio vale por 103
Especialmente importante, dado que com esta representao com que os computadores trabalham, a base 2, que tem apenas dois dgitos: 0 e 1. O processo de contagem idntico ao praticado em qualquer outra base. No entanto, e como apenas existem dois dgitos nesta base, ao fazer uma contagem rapidamente aparecem sequncias com muitos dgitos, como ser visto mais frente. Comeando a contagem: 0, 1, 10 Esgotada a capacidade de representao com um dgito, passam-se a usar dois dgitos; o dgito da direita vale uma vez a base, ou seja, vale 2; , 10, 11, 100 11, o maior nmero representvel com apenas dois dgitos. Em 100 passamos a ter trs dgitos em que o da esquerda vale a base ao quadrado (22); , 100, 101, 110, 111, 1000, 1001, 1010, 1011, 1100, 1101, 1110, 1111, 10000, E poder-se-ia continuar indefinidamente. Repare que na representao 1000, o 1 da esquerda vale pela base ao cubo (23); e em 10000, o dgito da esquerda vale pela base quarta (24).
SDAC
Sistemas Digitais e Arquitectura de Computadores
O que foi visto para a base 10 generaliza-se facilmente para outras bases. Considerando por exemplo a base 8, em vez de 10 dgitos, passamos a ter agora 8 dgitos e para no inventar o que j est inventado, vamos represent-los pelos smbolos de 0 a 7. O processo de contagem em tudo semelhante ao usado em base 10. Comeamos com os nmeros representveis apenas com um algarismo, que agora vo apenas at 7: 0, 1, 2, 3, 4, 5, 6, 7 Na base 8, o ltimo nmero representvel com apenas um algarismo ser portanto o 7. O nmero que se segue na contagem ser o 10 (que tem o valor 18 + 0 = 8) . Sendo assim a nossa sequncia de contagem : , 7, 10, 11, 12, 13, 14, 15, 16, 17, 20 Repare que ao chegar a 17 mais uma vez se esgotaram os dgitos na posio com menos peso: aumenta-se 1 na posio seguinte; j contamos 2 vezes a base, ou seja, vamos em 2 base (e o valor 28); Seguindo a contagem: , 20, 21, 22, , 75, 76, 77 Repare que o 77 ser o maior nmero com 2 dgitos representvel em base 8 (e o seu valor 78 + 7 = 63). A seguir ao 77 vir ento o nmero representado por 100 contmos basebase vezes; o dgito 1 na terceira posio vale a base ao quadrado (neste caso 282). E seguindo este raciocnio poderamos continuar a contagem indefinidamente: , 77, 100, 101, 102, , 107, 110, 111, , 117, 120, 121, , 775, 776, 777, 1000,
Vamos agora considerar a base 16. Na base 16 teremos 16 dgitos; os primeiros 10 so representados da maneira habitual, isto , usando os algarismos de 0 a 9; a partir da so usadas as primeiras letras do alfabeto: A, B, C, D, E e F. O processo de contagem em tudo semelhante ao que foi visto at este ponto. A nica particularidade que agora os nmeros representveis com um dgito vo at ao F (cujo valor 15): 0, 1, 2, , 9, A, B, C, D, E, F 8
SDAC
Sistemas Digitais e Arquitectura de Computadores
Repare agora que depois do 9 no se passou nada de especial, pois ainda h o A (cujo valor 10), depois o B (cujo valor 11), e assim sucessivamente at ao F, que ser o maior nmero representvel com apenas um algarismo na base 16. Continuando a contagem: , E, F, 10 Ao chegar a F esgotaram-se os dgitos, logo esgotou-se a capacidade de representao de nmeros s com um dgito passam-se a ter que usar dois dgitos. Na representao 10, o 1 da esquerda vale a base (o valor de 10 na base 16 ser portanto 116 + 0 = 16); , 10, 11, 12, , 19, 1A, 1B, 1C, 1D, 1E, 1F, 20 Em 20 contmos duas vezes o nmero de dgitos; vamos em 2base (e o valor respectivo 216 = 32). , 20, 21, , 99, 9A, 9B, 9C, 9D, 9E, 9F, A0, A1, FC, FD, FE, FF, 100 O nmero representado por FF o maior valor representado com 2 dgitos na base 16. O seu valor 1516+15 = 255. Na representao hexadecimal 100, o 1 da esquerda vale por 162.
SDAC
Sistemas Digitais e Arquitectura de Computadores
Converso de nmeros representados em qualquer base para a base decimal, usando a frmula geral de significncia posicional.
O conceito de representao numrica apresentado para a base decimal generaliza-se facilmente para outras bases. Em qualquer base um nmero representa-se como uma sequncia de dgitos. Sendo B a base, um dgito di na posio i tem peso Bi ou seja vale: di Bi Em geral, para um dado um nmero com os dgitos: dn dn-1 ... d2 d1 d0 , o seu valor numrico, dada a base B, : dnBn + dn-1Bn-1 + ... + d2B2 + d1B1 + d0B0 Para clarificar a representao e evitar ambiguidades, pode-se explicitar a base de numerao usando a seguinte notao: (312)10 a sequncia de dgitos 312 na base 10; (312)8 a sequncia de dgitos 312 na base 8; (312)16 a sequncia de dgitos 312 na base 16. O valor respectivo de cada um (em decimal) o que resulta da expresso anterior. Assim: (312)10 = 3102 + 1101+ 2100 (312)8 = 382 + 181 + 280 (312)16 = 3162+ 1161 + 2160 Obviamente os trs nmeros representados tm valores diferentes a representao e o valor correspondente so coisas distintas. Em geral, sequncias de dgitos iguais em bases diferentes representam valores diferentes (s sero os mesmos caso tenham apenas um dgito). Pode confirmar, por exemplo, que: (312)10 = (470)8 = (138)16 = (100111000)2 (202)10 = (312)8 = (CA)16 = (11001010)2 (786)10 = (1422)8 = (312)16 = (1100010010)2
10
SDAC
Sistemas Digitais e Arquitectura de Computadores
Exerccios
1. Converta os seguintes nmeros em base binria para a base decimal: a. 10 b. 110 c. 111 d. 1100 e. 1101 f. 1111 g. 10000 h. 101010 i. 110010 j. 100101 k. 1101100 l. 11110011 m. 10100110 2. Converta os seguintes nmeros em base octal para a base decimal: a. 20 b. 25 c. 45 d. 154 e. 363 f. 456 g. 1234 h. 3456 i. 73457
3. Converta os seguintes nmeros em base hexadecimal para a base decimal: a. A b. 10 c. 102 d. 1BC e. AAB f. C157 g. 237F h. FFFA0 i. ABCDEF
11
SDAC
Sistemas Digitais e Arquitectura de Computadores
Converso de nmeros em decimal para outras bases de numerao atravs do mtodo das divises sucessivas.
Decimal para Binrio
Faremos divises inteiras por 2 at no podermos dividir mais o nmero, o resultado ser a sequncia dos valores do resto, sendo o primeiro resto o valor menos significativo. Por exemplo:
Exerccios
Converta os seguintes nmeros em base decimal para a base binria:
a. b. c. d. e. f. g. h. i. j. k.
20(10) 25(10) 48 (10) 154 (10) 363 (10) 459(10) 1234(10) 3456(10) 83457(10) 343456(10) 8344957(10)
12
SDAC
Sistemas Digitais e Arquitectura de Computadores
Faremos divises inteiras por 8 at no conseguirmos dividir mais o nmero, o resultado ser a sequncia dos valores do resto, sendo o primeiro resto o valor menos significativo. Por exemplo:
Exerccios
Converta os seguintes nmeros em base decimal para a base octal:
a. 20(10) 24(8)
b. c. d. e. f. g. h. i. j. k.
25(10) 31(8) 48 (10) 60 (8) 154 (10) 232(8) 363 (10) 553(8) 459(10) 713(8) 1234(10) 2322(8) 3456(10) 6600(8) 83457(10) - 243001 (8) 343456(10) 1236640 (8) 8344957(10) 37652575 (8)
13
SDAC
Sistemas Digitais e Arquitectura de Computadores
Faremos divises inteiras por 16 at no conseguirmos dividir mais o nmero, o resultado ser a sequncia dos valores do resto, sendo o primeiro resto o valor menos significativo se algum valor de resto for superior a 9 teremos de converte-o para o smbolo respectivo. Por exemplo:
Exerccios
Converta os seguintes nmeros na base decimal para a base Hexadecimal:
1. 10(10) A(16) 2. 115(10) 73(16) 3. 236(10) EC(16) 4. 333(10) - 14D(16) 5. 450(10) 1C2(16) 6. 1033(10) -409(16) 7. 4120(10) 1018 (16) 8. 33453(10) - 82AD(16) 9. 45340(10) - B11C (16) 10. 224550(10) - 36D26 (16)
14
SDAC
Sistemas Digitais e Arquitectura de Computadores
Octal para binrio Neste tipo de converses para cada nmero em octal criamos grupos de trs dgitos, uma vez que o maior nmero que podemos representar com 3 dgitos em binrio o 7.
Exerccios
Converta os seguintes nmeros na base octal para a base binria:
1. 2. 3. 4. 5. 6. 7. 8.
14(8) 45 (8) 154 (8) 363 (8) 123(8) 1544 (8) 3633 (8) 12233(8)
1. 1101 2. 1111 3. 10000 4. 101010 5. 110010 6. 1101100 7. 11110011 8. 101001110 9. 110000110001100 10. 110100110001100 11. 1101001100011000
15
SDAC
Sistemas Digitais e Arquitectura de Computadores
Neste tipo de converses para cada nmero em hexadecimal criamos grupos de quatro dgitos, uma vez que o maior nmero que podemos representar com 4 dgitos em binrio o 15.
Exerccios
a. b. c. d. e. f. g. h. i.
a. b. c. d. e. f.
SDAC
Sistemas Digitais e Arquitectura de Computadores
g. h. i. j. k.
Resumo
17
SDAC
Sistemas Digitais e Arquitectura de Computadores
Somar em binrio
As operaes em binrio so em tudo semelhantes s decimais. A exiguidade do nmero de dgitos faz com que as operaes sejam muito apuradas. Exemplo: 0+1 d 1; 1+1 d 0 e vai 1; 1+1+1 d 1 e vai 1;
Na prtica tudo se resume a saber somar dois dgitos ou, no mximo, trs, quando h transporte.
Exerccios
Efectue as seguintes somas em binrio:
18
SDAC
Sistemas Digitais e Arquitectura de Computadores
b) 1 (vai 1 vindo da ordem direita) + 5 + 4 = 10 Utilizando o mesmo conceito anterior, temos: 15 10 8 2 e vai 1 (que igual a 8).
c) 1 (vai 1) + 6 + 7 = 14 14 - 8 = 6 e vai 1
Exerccios
Efectue as seguintes Adies em octal:
19
SDAC
Sistemas Digitais e Arquitectura de Computadores
764710373+7722236637
20
SDAC
Sistemas Digitais e Arquitectura de Computadores
Subtrair em binrio
Na subtraco as possibilidades tambm so muito limitadas. Exemplo: 1 para 1 d 0; 1 para 0 d 1, e vai 1; 1 e 1 d 0 (ou seja 10) para 1 (ou seja 11) d 1 e vai 1; 1 e 0 d 1 para 1 d 0;
Exerccios
Efectue as seguintes subtraces em binrio:
a) 10001-1111 b) 111001-100 c) 1011111- 1110 d) 1101011-1011 e) 110011-10010 f) 10101110-111011 g) 10000000-1110000 h) 10110010-1101100 i) 1101110011-11001110
21
SDAC
Sistemas Digitais e Arquitectura de Computadores
Exerccios
Efectue as seguintes multiplicaes em binrio:
SDAC
Sistemas Digitais e Arquitectura de Computadores
g)11111 x 1111
Representao de nmeros relativos (positivos e negativos), usando cdigo de complementos.
23(10) = 10111(2) usando 8 bits temos: 000101112 15(10) = 1111(2) usando 8 bits temos: 000011112 como o sinal negativo vem 1510 = 100011112. 11(10) = 1011(2) usando 8 bits temos: 000010112 9(10) = 1001(2) usando 8 bits temos: 000010012 , como o sinal negativo vem 910 = 100010012
Exerccios
Efectue as seguintes representaes de nmeros decimais em binrio sinal-mdulo 8 bits:
1. 2. 3. 4. 5. 6. 7.
23
SDAC
Sistemas Digitais e Arquitectura de Computadores
O complemento a 1
1. Represente o nmero absoluto (sem o sinal) em binrio, com o nmero de bits solicitado (completando com 0s zeros esquerda). 2. Caso o nmero seja positivo, no h alterao (o nmero j est representado). 3. Caso o nmero seja negativo, complementa-se o nmero a 1 (inverte-se o valor dos bits todos os bits zero passam a 1 e todos bit 1 passa a zero )
Para descobrir o valor de um nmero representado em complemento para um dever procederse de forma inversa, segundo este algoritmo: 1. Verifica-se o primeiro bit (que ainda tem como funo dizer qual o sinal do nmero) 2. Caso o nmero seja positivo (primeiro bit = 0), apenas converte-se para decimal para descobrir o nmero. 3. Caso o nmero seja negativo (primeiro bit = 1) 3.1. Invertem-se os bits do nmero (retorno do complemento a 1) 3.2. Converte-se o valor do nmero em decimal. (No esquecendo que o nmero NEGATIVO)
24
SDAC
Sistemas Digitais e Arquitectura de Computadores
O complemento a 2
1. Represente o nmero absoluto (sem o sinal) em binrio, com o nmero de bits solicitado (completando com zeros esquerda). 2. Caso o nmero seja positivo, no h alterao (o nmero j est representado) 3. Caso o nmero seja negativo, 3.1. Complementa-se o nmero a 1, invertendo o valor dos bits (complemento a 1) 3.2. Soma-se 1 ao resultado do complemento a 1
Para descobrir o valor de um nmero representado em complemento de 2, deve-se percorrer o caminho contrrio, seguindo-se o algoritmo a seguir: 1. Verifica-se o primeiro bit (que ainda tem como funo dizer qual o sinal do nmero) 2. Caso o nmero seja positivo (primeiro bit = 0), apenas converte-se para decimal para 'descobrir' o nmero 3. Caso o nmero seja negativo (primeiro bit = 1) 3.1. Subtrai-se 1 do nmero (transformando em complemento a 1) 3.2. Invertem-se os bits do nmero (retorno do complemento a 1) e 3.3. Converte-se o valor do nmero em decimal. (No esquecendo que o nmero NEGATIVO)
25
SDAC
Sistemas Digitais e Arquitectura de Computadores
2. Caso o n negativo tenha maior valor absoluto que o positivo: a. O resultado est correctamente representado em complemento para um. Exemplos: 1. 2. 3. 4. 12-14 20-50 32-45 20-29
3. Ambos os ns negativos: a. Somar mais 1 ao resultado Exemplos: 1. -12-14 2. -20-50 3. -32-45 4. -20-29 4. Ambos os ns positivos a. O resultado j est em complemento para 1, pode haver necessidade de acrescentar um zero esquerda Exemplos: 1. 12+ 14 2. 20+50
26
SDAC
Sistemas Digitais e Arquitectura de Computadores
Complemento para dois 1. Caso o nmero positivo tenha maior valor absoluto que o negativo: a. Ignorar o ultimo transporte b. Complementar para 2 o resultado i. Exemplos: 1. 12-4 2. 20-5 3. 32-23 4. 20-19
2. Caso o n negativo tenha maior valor absoluto que o positivo: a. O resultado j est correctamente representado em complemento para 2. Exemplos: 1. 2. 3. 4. 12-14 20-50 32-45 20-29
3. Ambos os ns negativos: a. O resultado j est correctamente representado em complemento para 2. Exemplos: 1. 2. 3. 4. -12-14 -20-50 -32-45 -20-29
4. Ambos os ns positivos a. O resultado j est em complemento para 2, pode haver necessidade de acrescentar um zero esquerda Exemplos: 1. 12+ 14 2. 20+50
27
SDAC
Sistemas Digitais e Arquitectura de Computadores
Bibliografia
sistemas de numerao. (s.d.). Obtido de Wikipedia: http://pt.wikipedia.org/wiki/Sistema_de_numera%C3%A7%C3%A3o
28