You are on page 1of 31

UNIVERSIDADE DO ESTADO DE SANTA CATARINA CENTRO DE CINCIAS TECNOLGICAS CCT Departamento de Cincia da Computao

Professor Edino Mariano Lopes Fernandes

Nota importante: Existem materiais includos neste documento de outros autores e fontes bibliogrficas quase todos devidamente identificadas (algumas fontes no foi possvel de serem identificadas, trechos de textos, questes soltas, pinadas aqui e ali, etc. Caso o usurio conhea alguma fonte no identificada no texto, por favor, comunique para que se efetue os devidos crditos). Algumas questes foram retiradas de sites de Internet, sendo de uso livre. Para informaes mais completas, deve-se recorrer aos livros ou Web sites citados na bibliografia fornecida na apostila da disciplina.

I SISTEMAS DE NUMERAO
1.1 Introduo(1)

Um sistema de numerao um conjunto finito de smbolos organizados atravs de uma lei de formao que permite representar qualquer quantidade numrica. No incio dos tempos conhecidos os habitantes das cavernas costumavam pintar animais nas paredes, provavelmente para armazenar informaes que obtinham no seu cotidiano.

Mais tarde, no pastoreio, o pastor usava vrias formas para controlar o seu rebanho. Pela manh, ele soltava os seus carneiros e analisava ao final da tarde, se algum tinha sido roubado, fugido, se perdido do rebanho ou se havia sido acrescentado um novo carneiro ao rebanho. Para fazer isso, ele guardava pedrinhas dentro de um saco. Assim ele tinha a correspondncia um a um, onde cada carneiro correspondia a uma pedrinha que era armazenada em um saco.
Nota: A palavra que usamos hoje, clculo, derivada da palavra latina calculus, que significa pedrinha.

Posteriormente, os Sumrios criaram um sistema para representar sua linguagem atravs de desenhos, gravados em placas de argila. Mais tarde, os egpcios usavam representar sua linguagem atravs dos hierglifos gravados em papiros. Os chineses gravavam mensagens nos cascos de tartarugas, os incas usavam fios com ns (os quipos). Gradativamente o homem foi aperfeioando sua forma de comunicao atravs da escrita. Os conceitos gerais de linguagem tem uma representao muito complexa - por exemplo, como representar um objeto, uma ao ou um sentimento. Presume-se que o homem encontrou mais facilidade para representar quantidades. Inicialmente, as quantidades eram representadas com os dedos. Assim, desde o princpio nosso entendimento de quantidades sempre foi digital (vem de "digitus" = dedos). Os mais antigos registros encontrados representam quantidades atravs de entalhes em ossos. Diversas civilizaes antigas criaram alguma forma de representao de quantidades, mas cada nmero n era sempre representado por n smbolos da unidade. Para facilitar a contagem, as unidades eram agrupadas em grupos de 5 (uma mo-cheia) ou 10 (duas mos-cheias). Os smbolos numricos atualmente utilizados so conhecidos como Arbicos e foram desenvolvidos pelos rabes. Ao grego Pitgoras se atribui a diviso dos nmeros em mpares e pares. Ele concebeu que todas as manifestaes da Natureza se fazem com nmeros ou propores matemticas. Hoje, existem vrios sistemas numricos, dentre os quais, para este estudo, destacam-se o sistema decimal, o sistema binrio, o sistema octal e o sistema hexadecimal.

1.2 Sistemas de Numerao(2)


Os sistemas de numerao tm por objetivo prover smbolos e convenes para representar quantidades, de forma a registrar a informao quantitativa e poder process-la. A representao de quantidades se faz com os nmeros. Na antigidade duas formas de representar quantidades foram inventadas. Inicialmente, os egpcios, criaram um sistema em que cada dezena (uma mocheia de nosso exemplo anterior) era representada por um smbolo diferente. Usando por exemplo os smbolos # para representar uma centena, & para representar uma dezena e @ representando uma unidade (smbolos escolhidos ao acaso), teramos que ###&&@ representaria 321.
Arquitetura e Organizao de Computadores Pgina 2

Sistemas de Numerao no-posicional


Uma das primeiras tentativas de sistema de numerao bem sucedida o sistema romano. Ele usa um conjunto de sete smbolos {I,V,L,C,D,M} e capaz de representar uma grande variedade de nmeros. Observe que h um conjunto finito de smbolos e uma lei de formao. Contudo ele no consegue representar qualquer quantidade como o zero por exemplo. Eram usados smbolos (letras) que representavam as quantidades, como por exemplo: I ( valendo 1), V (valendo 5), X (valendo 10), C (valendo 100), etc. A regra de posicionamento determinava que as letras que representavam quantidades menores e precediam as que representavam quantidades maiores, seriam somadas; se o inverso ocorresse, o menor valor era subtrado do maior (e no somado). Assim, a quantidade 128 era representada por: CXXVIII = 100 + 10 + 10 + 5 + 1 + 1 + 1 = 128. Um grande problema desse sistema a dificuldade de realizar operaes com essa representao. Assim, posteriormente foram criados sistemas em que a posio dos algarismos no nmero passou a alterar seu valor (sistemas de numerao posicionais).
Os Egpcios da Antiguidade criaram um sistema muito interessante para escrever nmeros, baseado em agrupamentos. No sistema de numerao egpcia os nmeros so representados por smbolos especiais para 1, 10, 100, 1000 e de uma forma aditiva: 1 era representado por uma marca que se parecia com um basto | ; 2 era representado por duas marcas || ; E assim por diante... 3 4 5 6 7 8 9 ||| |||| ||||| |||||| ||||||| |||||||| ||||||||| Qualquer semelhana com cdigo de barras no coincidncia.
Fonte:http://www.portalsaofrancisco.com.br/alfa/sistema-de-numeracao-egipcia/

Sistemas de Numerao Posicionais


Nos sistemas de numerao posicionais, o valor representado pelo algarismo no nmero depende da posio em que ele aparece na representao. O primeiro sistema desse tipo foi inventado pelos chineses. Eram usados palitos, sendo 1 a 5 palitos dispostos na vertical para representar os nmeros 1 a 5; de 6 a 9 eram representados por 1 a 4 palitos na vertical, mais um palito na horizontal (valendo 5) sobre os demais. Cada nmero era ento representado por uma pilha de palitos, sendo uma pilha de palitos para as unidades, outra para as dezenas, outra para as centenas, etc. Esse sistema, com as pilhas de palitos dispostas em um tabuleiro, permitia a realizao das quatro operaes aritmticas. No existia representao para o zero (o espao relativo ficava vazio).O tabuleiro aritmtico (chamado swan-pan), alm das quatro operaes, era usado na lgebra e na soluo de equaes. Essa tcnica era chamada de Mtodo do Elemento Celestial. Porm o sistema mais bem sucedido foi o sistema decimal. Ele usa dez smbolos {0,1,2,3,4,5,6,7,8,9} e uma regra de formao capaz de representar qualquer quantidade finita. Este sistema foi originalmente inventado pelos matemticos hindus aproximadamente em 400 D.C. Os rabes comearam a usar o sistema em 800 D.C. aproximadamente, quando ficou conhecido como o Sistema Numrico Arbico. Aps ele ter sido introduzido na comunidade da Europa por volta de 1200 D.C., o sistema logo adquiriu o ttulo de "sistema numrico decimal".(3)
Arquitetura e Organizao de Computadores Pgina 3

1.3 Base de um Sistema de Numerao(2)


A base de um sistema a quantidade de algarismos disponvel na representao. A base 10 hoje a mais usualmente empregada, embora no seja a nica utilizada. No comrcio pedimos uma dzia de rosas ou uma grosa de parafusos (base 12) e tambm marcamos o tempo em minutos e segundos (base 60). Os computadores utilizam a base 2 (sistema binrio) e os programadores, por facilidade, usam em geral uma base que seja uma potncia de 2, tal como 24 (base 16 ou sistema hexadecimal) ou eventualmente ainda 23 (base 8 ou sistema octal).

1.4 Sistema Decimal


Abaixo ilustra-se a representao de um nmero no sistema decimal e na forma equivalente, de notao posicional, a cada dgito (smbolo) do nmero decimal atribudo um certo peso em funo da sua posio no nmero. O nmero 10 definido como a base deste sistema. (Forma Posicional) (Forma Polinomial) 3475 = 3000 + 400 + 70 + 5 = 3 x 103 + 4 x 102 + 7 x 101 + 5 x 100

onde, 10 a base do sistema, e 103 , 102 ,101 e 100 representam os pesos. Outro exemplo: 123,456 = 100 + 20 + 3 + 0,4 + 0,005 + 0,0006 = 1 x 102 + 2 x 101 + 3 x 100 + 4 x 10-1 + 5 x 10-2 + 6 x 10-3 O princpio da atribuio de pesos, observado na notao posicional, pode ser estendido a qualquer sistema numrico.Na base 10, dispe-se de 10 algarismos para a representao do nmero: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. Na base 2, seriam apenas 2 algarismos: 0 e 1. Na base 16, seriam 16: os 10 algarismos aos quais estamos acostumados, mais os smbolos A, B, C, D, E e F, representando respectivamente 10, 11, 12, 13, 14 e 15 unidades. Generalizando, temos que uma base b qualquer dispor de b algarismos, variando entre 0 e (b-1). A representao 125,3810 (base 10) significa 1x102 + 2x101 + 5x100 + 3x10-1 + 8x10-2 : Ou seja, , podemos representar uma quantidade N qualquer, numa dada base b, com um nmero tal como segue: Nb = an.bn + .... + a2.b2 + a1.b1 + a0.b0 + a-1.b-1 + a-2.b-2 + .... + a-n.b-n , sendo que, an.bn + .... + a2.b2 + a1.b1 + a0.b0 a parte inteira e a-1.b-1 + a-2.b-2 + .... + a-n.b-n a parte fracionria. Intuitivamente, sabemos que o maior nmero que podemos representar, com n algarismos, na base b, ser o nmero composto n vezes pelo maior algarismo disponvel naquela base (ou seja, b-1). Por exemplo, o maior nmero que pode ser representado na base 10 usando 3 algarismos ser 999 (ou seja, 103 - 1 = 999). Podemos ver que o maior nmero inteiro N que pode ser representado, em uma dada base b, com n algarismos (n "casas"), ser N = bn - 1. Assim, o maior nmero de 2 algarismos na base 16 ser FF16 que, na base 10, eqivale a 25510 = 162 - 1.

Arquitetura e Organizao de Computadores

Pgina 4

1.5 Base diferente de 10[2]


A regra de formao de nosso sistema de numerao no est, de forma alguma, atada ao nmero de smbolos usados. Assim, podemos pensar em sistemas de numerao com qualquer quantidade de smbolos ou qualquer base. Imagine que temos, apenas, trs smbolos {0,1,2}. Neste caso os nmeros seriam representados da seguinte forma:

Na base 10 0 1 2 3 4 5 6 7 Na base 10 8 9 10 11 12

Na base
3 0 1 2 10 11 12 20 21

Na base
3 22 100 101 102 110

Se, em vez dos smbolos 0, 1 e 2, tivssemos os smbolos {, , } isto, em nada, mudaria as coisas. Pois os numerais seriam:
Na base 10 0 1 2 3 4 5 6 Na base 3 0 1 2 10 11 12 20 Na base 3 com ,

Algumas bases particularmente importantes para ns so as bases 2, 8 e 16 ditas binria, octal e hexadecimal respectivamente.

1.6 Sistema Binrio


Criado por um matemtico alemo do sculo dezessete, Golttfried Wilhelm von Leibniz foi o advogado do sistema binrio de numerao que tem por base o nmero 2, usando apenas os
Arquitetura e Organizao de Computadores Pgina 5

smbolos 0 e 1. As razes que o levaram a este sistema parece ter sido mstica onde havia grande beleza na analogia entre zero representando o vazio e um representado a divindade. Os computadores modernos utilizam apenas o sistema binrio, isto , todas as informaes armazenadas ou processadas no computador usam apenas DUAS grandezas, representadas pelos algarismos 0 e 1. Essa deciso de projeto deve-se maior facilidade de representao interna no computador, que obtida atravs de dois diferentes nveis de tenso. Havendo apenas dois algarismos, portanto dgitos binrios, o elemento mnimo de informao nos computadores foi apelidado de bit (uma contrao do ingls binary digit).

Representao Binria 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0

1 1 0 1 0 0 1 0 0 0

1 0 0 0 0

1 0 0 0 0 0

1 0 0 0 0 0 0

1 0 0 0 0 0 0 0

1 0 0 0 0 0 0 0 0

Potncia 20 21 22 23 24 25 26 27 28 29 210

Repr.Decimal

1 2 4 8 16 32 64 128 256 512 1.024

A representao binria perfeitamente adequada para utilizao pelos computadores. No entanto, um nmero representado em binrio apresenta muitos bits, ficando longo e passvel de erros quando manipulado por seres humanos normais como por exemplo os programadores, analistas e engenheiros de sistemas (bem, no to normais assim ...). Para facilitar a visualizao e manipulao por programadores de grandezas processadas em computadores, so usualmente adotadas as representaes octal (base 8) e principalmente hexadecimal (base 16). Ressaltamos mais uma vez que o computador opera apenas na base 2 e as representaes octal e hexadecimal no so usadas no computador, elas se destinam apenas manipulao de grandezas pelos programadores. A seguir apresentam-se nmeros representados no sistema binrio e na notao posicional. 10012 1011011.10012

No sistema binrio, o ponto (.) equivalente vrgula do sistema decimal.

1.7 Sistema Octal e Sistema Hexadecimal


Em projetos de informtica (isto , nos trabalhos realizados pelos programadores, analistas e engenheiros de sistemas), usual representar quantidades usando sistemas em potncias do binrio para reduzir o nmero de algarismos da representao e consequentemente facilitar a compreenso da grandeza e evitar erros. No sistema octal (base 8), cada trs bits so representados por apenas um algarismo octal (de 0 a 7). No sistema hexadecimal (base 16), cada quatro bits so representados por apenas um algarismo hexadecimal (de 0 a F). Neste sistema, usam-se os dgitos 0,1,2,3,4,5,6,7,8,9 e as letras A, B, C, D, E e F, que correspondem aos algarismos decimais 10,11,12,13,14 e 15, respectivamente. A seguir, apresentamos uma tabela com os nmeros em decimal e sua representao correspondente em binrio, octal e hexadecimal:
Arquitetura e Organizao de Computadores Pgina 6

Base 10 Base 2 Base 8 0 0 0 1 1 1 2 10 2 3 11 3 4 100 4 5 101 5 6 110 6 7 111 7 8 1000 10 9 1001 11 10 1010 12 11 1011 13 12 1100 14 13 1101 15 14 1110 16 15 1111 17

Base 16 0 1 2 3 4 5 6 7 8 9 A B C D E F

Nota: a base 16 ou sistema hexadecimal pode ser indicada tambm por um "H" ou "h" aps o nmero; por exemplo: FFH significa que o nmero FF (ou 255 em decimal) est em hexadecimal. No confundir o "H" ou "h" com mais um dgito, mesmo porque em hexadecimal s temos algarismos at "F" e portanto no existe um algarismo "H".

Exemplo: Como seria a representao do nmero 1610 em binrio, octal e hexadecimal? Soluo: Seria respectivamente 100002, 208 e 1016. Exemplos: 7268 54,378 145H 5A3 EF4

1.8 Converses de Bases Mudana de Base de Nmeros Inteiros


Base, como j foi dito, nmero de smbolos usados em um sistema de numerao posicional. Para todos os efeitos, a base determina unicamente o sistema de numerao posicional. No importa se usa-se 0, 1 e 2 ou , e , ambos formam um sistema de numerao posicional de base trs. Assim, mudar de base representar um nmero dado em um sistema de numerao posicional em um outro sistema de numerao posicional com uma base diferente. Como, na maioria das vezes usamos os mesmos algarismos para as diversas bases, fica difcil decidir, s por olhar, em que base est representado um determinado nmero. Para contornar este problema, convenciona-se indicar em subescrito o valor da base. Assim, o nmero dezessete em diversas bases seria: 1710, 178 ou 1716 etc.

Da base 10 para uma base b


Para transformar um nmero decimal inteiro em um nmero em uma base b qualquer basta fazer divises inteiras sucessivas do nmero por b e, depois, reunir os restos em ordem inversa.
Arquitetura e Organizao de Computadores Pgina 7

Por exemplo, qual ser a representao de 1310 na base 2? Executando divises sucessivas at encontrar quociente 0, obtemos: 13 2 = 6 62=3 32=1 12=0 r=1 r=0 r=1 r=1

Assim, tomando os restos das divises em ordem contrria a que eles aparecem conclumos que: 1310 = 11012

De uma base b para a base 10


Para transformar um nmero representado em um base b na base 10 basta expandir o polinmio que representado por este nmero. Assim, se temos o nmero Nb = b , onde , e so algarismos da base b, basta expandir e calcular o polinmio para determinar N10. N10 = b2 + b1 + b0 Por exemplo, qual o valor de N2 = 11012 na base 10? Para tanto, basta calcular:

N10 = 1 23 + 1 22 + 0 21 + 1 20 N10 = 8 + 4 + 0 + 1 N10 = 13

De uma base a para uma base b


Para fazer a mudana de uma base a para uma base b basta passar da base a para a base 10 e depois passar da base 10 para a base b. Coisas que j sabemos fazer. Por exemplo, 314 correspondo ao que na base 6? Primeiro, passamos 314 para a base 10: N10 = 3 41 + 1 40 = 12 + 1 = 1310 Depois, passamos o 1310 para a base 6: 13 6 = 2 r = 1 26=0 r=2 o que d o nmero 216. Portanto, conclumos que 314 igual a 216.

De base 10 para base 2.


Exemplo 1 : Converter o nmero 40010 para binrio.

Arquitetura e Organizao de Computadores

Pgina 8

De base 2 para base 10.


1001101 = 1 x 26 + 0 x 25 + 0 x 24 + 1 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 64 + 0 + 0 + 8 + 4 + 0 + 1 = 7710

De base 2 para base 8.


Para transformar um nmero binrio em octal, basta separ-lo em grupos de trs algarismos a partir da direita, por exemplo: Tomemos o nmero binrio 110010. Separando, 110 010

Faz-se ento a converso para o sistema decimal. Como o maior nmero que se pode formar com trs algarismos 7, a converso ir resultar diretamente no nmero no sistema octal. 1102 = 68 0102 = 28

Portanto, 1100102 = 628

De base 8 para base 2.


Desmembra-se o nmero e transforma-se cada algarismo no correspondente binrio. 278 2 = 010 e 7 = 111, portanto 278 = 0101112

De base 2 para base 16.


anlogo converso do sistema binrio para octal, sendo que nesse caso, agrupamos de 4 em 4 algarismos da direita para a esquerda. Exemplo: Converter o binrio 10011000 em hexadecimal.
Arquitetura e Organizao de Computadores Pgina 9

1001 = 9

1000 = 8

Portanto 100110002 = 98H

De base 16 para base 2.


anlogo converso do sistema octal para binrio, sendo que nesse caso, necessitamos de 4 algarismos binrios para representar o nmero hexadecimal. Exemplo: Converter o nmero C13 em binrio. C = 1100 1 = 0001 3 = 0011

Portanto, C13H = 1100000100112

De base 10 para base 8.


Exemplo: Converter 12510 para base 8.

O mesmo raciocnio vale para converso da base 10 para uma base r , menor que 10.

De base 8 para base 10


Exemplo: Converter 1748 para decimal. 1748 = 1 x 82 + 7 x 81 + 4 x 80 = 64 + 56 + 4 = 12410

De base 10 para base 16

Arquitetura e Organizao de Computadores

Pgina 10

De base 16 para base 10


1C3 = 1 x 162 + C x 161 + 3 x 160 = 1 x 162 + 12 x 161 + 3 x 160 = 45110

De base 16 para base 8


Para fazer transformaes entre as bases 8 e 16, que no so potncias uma da outra, usamos a base 2 como intermediria nestas transformaes. Por exemplo, para transformar 1BC416 na base 8, primeiro transformamo-lo para a base 2. Ento: 1BC416 = 0001.1011.1100.01002 reagrupando o agora nmero binrio de trs em trs temos: 0.001.101.111.000.1002 = 157048 Portanto 1BC416 = 157048.

De base 8 para base 16


Por outro lado, se tivermos, por exemplo, o nmero 2358 para transform-lo para a base 16, primeiro passamo-lo para a base 2. 2358 = 010.011.1012 Em seguida grupamos os algarismos binrios de quatro em quatro. 0.1001.11012 = 9D16 Portanto 2358 = 9D16.

1.9 Converso de nmeros fracionrios

No so apenas os nmeros inteiros que tm representao em outras bases. Os nmeros com parte fracionria tambm podem ser mudados de base. As regras para estas mudanas so muito semelhantes as dos nmeros inteiros. A principal diferena que os nmeros inteiros tm potncias positivas enquanto os fracionrios tm potncias negativas.

1.9.1

Da base 10 para uma base b

Para passar um nmero fracionrio da base 10 para uma base b, basta multiplic-lo sucessivamente pela base de destino, guardando a parte inteira, at alcanar zero. Por exemplo, qual a representao de 0,12510 na base 2? Para determinar isto, multiplicamos sucessivamente 0,125 por 2: 0,125 2 = 0,25 i=0 0,25 2 = 0,5 i=0 0,5 2 = 1 i=1 Assim, conclumos que 0,12510 igual a 0,0012.

Arquitetura e Organizao de Computadores

Pgina 11

Algumas vezes, no possvel alcanar o fim da parte fracionria porque a representao na base de destino tem uma quantidade muito grande de dgitos decimais. Neste caso, paramos o processo em algum ponto e assumimos um erro de aproximao. Por exemplo, qual o valor de 0,3710 na base 2? Como antes fazemos as multiplicaes sucessivas: 0,37 2 = 0,74 I = 0 0,74 2 = 1,48 I = 1 0,48 2 = 0,96 I = 0 0,96 2 = 1,92 I = 1 0,92 2 = 1,84 I = 1 0,84 2 = 1,68 I = 1 ... Com isto vemos que 0,3710 corresponde aproximadamente a 0,0101112,

1.9.2

De uma base b para a base 10

Da mesma forma que nos nmeros inteiros, para se passar de uma base b para a base 10, bastar expandir e calcular o polinmio representado pelo nmero em questo. Por exemplo, para encontrar o valor na base 10 do nmero 0,0101112 expande-se o polinmio:
0 2 1 + 1 2 2 + 0 2 3 + 1 2 4 + 1 2 5 + 1 2 6 = 0 1 1 1 1 1 1 + 1 2 + 0 3 + 1 4 + 1 5 + 1 6 = 21 2 2 2 2 2 1 1 1 16 + 4 + 2 + 1 23 1 + + + = = 0 ,3 5 9 3 7 5 4 16 32 64 64 64

que da um resultado aproximado de 0,35937510. Como voc pode notar acima, o numero 0,0101112 a representao aproximada de 0,3710. Agora que sabemos o valor exato da representao de 0,0101112 podemos determinar o erro que cometemos ao parar de fazer as multiplicaes. Este erro de 0,3710 - 0,35937510 = 0,01062510 ou 2,87%. Quanto mais casas decimais colocssemos, menor seria o erro relativo.

1.9.3 De uma base a para uma base b


Para trocar de uma base a para uma base b qualquer, o processo exatamente igual ao dos nmeros inteiros. Isto , passa-se da base a para a base 10 e, em seguida, da base 10 para a base b.

1.10 Mudana de Base de Nmeros Mistos


A mudana de base dos nmeros mistos feita tratando-se a parte inteira e a parte fracionria separadamente. Transforma-se uma, depois outra e, finalmente, juntam-se as partes. Por exemplo, para transformar 12,062510 para a base 2, primeiro transformamos a parte inteira:
Arquitetura e Organizao de Computadores Pgina 12

12 6 3 1

2=6 2=3 2=1 2=0

r=0 r=0 r=1 r=1

De onde se conclui que a parte inteira 1210 igual a 11002. Em seguida, transformamos a parte fracionria: 0,0625 2 = 0,125 0,125 2 = 0,25 0,25 2 = 0,5 0,5 2=1 i=0 i=0 i=0 i=1

Com isto, vemos que a parte fracionria fica 0,062510 igual a 0,00012. Portanto, o nmero completo transformado : 12,062510 = 1100,00012

Exemplos:
1. Converter 101.1012 para base 10. 101.1012 = 1 x 22 + 0 x 21 + 1 x 20 + 1 x 2-1 + 0 x 2-2 + 1 x 2-3 = 5,62510 2. Converter 8,37510 para a base 2. Neste caso, transformamos primeiramente a parte inteira do nmero: 8 = 1000 Ento, a seguir, utilizamos a seguinte seqncia: 0,375 x 2 = 0, 750 0,750 x 2 = 1,500 o primeiro algarismo aps a vrgula o primeiro dgito do binrio o primeiro algarismo aps a vrgula o segundo dgito do binrio, sendo 1, e a parte do nmero aps a vrgula no for nula, separamos o que fica depois da vrgula e reiniciamos neste caso, a parte depois da vrgula nula, o processo termina, e o binrio fica sendo: 8,37510 = 1000.011

0,500 x 2 = 1,000

1.11 Operaes aritmticas no sistema binrio

1.11.1 Adio
A adio binria realizada como a adio decimal. Se dois nmeros decimais 56719 e 31863, so adicionados, a soma 88582 obtida. Voc pode analisar os detalhes desta operao da seguinte maneira.

Arquitetura e Organizao de Computadores

Pgina 13

Somando a primeira coluna, nmeros decimais 9 e 3, resulta o dgito 2 com um transporte de 1. O transporte ento somado prxima coluna. Adicionado segunda coluna, (1+1+6), resulta o nmero 8, sem transporte. Este processo continua at que todas a colunas (incluindo os transportes) tenham sido somadas. A soma representa o valor numrico das parcelas.

A adio no sistema binrio realizada como numa adio convencional no sistema decimal. 0+0=0 0+1=1 1+0=1 1 + 1 = 10 1 + 1 + 1 = 11 Por exemplo:

Como no sistema decimal, 1 + 1 = 2, no sistema binrio representamos o 2 por 10, o 3 por 11, e assim por diante. Na soma, portanto, usamos o transporte, como fazemos no sistema decimal quando a soma passa de 9.

1.11.2. Subtrao
O mtodo anlogo ao do sistema decimal. 00=0 10=1 11=0 0 1 = 1 e empresta 1 Exemplo: 1000 111
-1-1-1

1000 111 0001

1.11.3. Multiplicao
Procede-se como na multiplicao decimal. 0x0=0 0x1=0 1x0=0
Arquitetura e Organizao de Computadores Pgina 14

1x1=1 Exemplo: 11010 x 10

1.11.4. Diviso
A diviso binria, por sua vez, utiliza processo anlogo ao sistema decimal, como mostra o exemplo:

Seja efetuar a operao: 101100 : 100

1.12 Nmeros negativos no sistema binrio I


Mtodos possveis: Sinal-mdulo (bit de sinal); (mtodo mais simples) Complemento de 2; (mtodo utilizado computacionalmente)

a) Mtodo Sinal-mdulo
Usualmente, reserva-se um bit (colocado esquerda do nmero, na posio do algarismo mais significativo). Se o nmero for positivo, o bit de sinal ser 0, se for negativo, ser 1. Exemplos:

3510 = 1000112

+3510 = +1000112 01000112 -3510 = -1000112 11000112

7310 = 10010012

+7310 = +10010012 010010012


-7310 = - 10010012 110010012
Pgina 15

Arquitetura e Organizao de Computadores

Bit de sinal 0: nmero positivo; 1: nmero negativo; b) Mtodo do complemento de 2


O mtodo usado para representar nmeros com sinal em microprocessadores chamado complemento de dois. Nmeros positivos so representados exatamente como eram com o mtodo do sinal e magnitude e o mtodo do complemento de um. Entretanto, nmeros negativos so representados como complemento de dois dos nmeros positivos. O complemento de dois de um nmero formado tomando-se o complemento de um e somado-se um. Por exemplo se voc trabalha com nmeros de 8 bits e usa o sistema de complemento de dois, +410 representado por 000001002. Para achar -410 voc deve achar o complemento de dois deste nmero. Voc faz o complemento de um, o que 111110112 e soma 1. Assim a representao em complemento de dois de -410 111111002. Faz uso de dois passos distintos: a) Obteno do complemento de 1 (inversor) A obteno do complemento de 1 d-se pela troca de cada bit do nmero pelo seu inverso ou complemento. Exemplo: 100110112 011001002 (*) (*) O nmero de bits precisa ser fixo (no caso 8)

a) Obteno do complemento de 2

Arquitetura e Organizao de Computadores

Pgina 16

c) Complemento de 2 na aritmtica binria


Na eletrnica digital de dispositivos tais como computadores, circuitos simples custam menos e operam mais rpido do que circuitos mais complexos. Logo nmeros em complementos de dois so usados na aritmtica pois eles permitem os circuitos mais simples, baratos e rpidos. Os computadores no conseguem realizar as subtraes do mesmo modo que o ser humano, eles apenas somam. O somador na ALU (Unidade Lgica e Aritmtica) sempre soma padres de bits como se eles fossem nmeros binrios sem sinal. a nossa interpretao destes padres que decide se nmeros com ou sem sinal esto sendo indicados. Isto nos permite trabalhar como nmeros com e sem sinal sem requerer diferentes circuitos para cada padro. A aritmtica de complemento de dois tambm simplifica a ALU em outro ponto. Todo o microprocessador tem uma instruo de subtrao. Assim, a ALU deve ser capacitada a subtrair um nmero de outro. Entretanto, se isto necessitar de um circuito de subtrao separado, a complexidade e o custo da ALU seria aumentado. Felizmente, a aritmtica de complemento de dois permite a ALU, realizar operaes de subtrao usando um circuito somador. Ou seja, a CPU usa o mesmo circuito tanto para soma como para subtrao. Assim, para fazermos uma subtrao usando complemento de 2:

Caso 1: A > B A: 1011 (decimal 11) 1011 B: 0110 (decimal 6) -> compl.de 2 -> 1010

Caso 2: A < B A: 0110 (decimal 6) 0110 B: 1011 (decimal 11) -> compl. de 2 -> 0101

Arquitetura e Organizao de Computadores

Pgina 17

2. Cdigo BCD A sigla BCD representa as iniciais de Binary-Coded-Decimal, que significa uma codificao do sistema decimal em binrio. A formao deste cdigo, j conhecida : Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

LSB Least Significant Bit

MSB Most Significant Bit

Arquitetura e Organizao de Computadores

Pgina 18

O nmero de bits (binary digit) de um cdigo o nmero de dgitos binrios que ele possui. Notamos, ento, que o cdigo BCD um cdigo de 4 bits. 2.1 Representao de Dados Um programa (a seqncia de instrues) dever manipular diferentes tipos de dados. Os dados podem ser: Numricos Ponto fixo (nmeros inteiros) Ponto flutuante (nmeros reais ou fracionrios) BCD (representao decimal codificada em binrio) Alfabticos Letras, nmeros e smbolos (codificados em ASCII e EBCDIC) O tipo de dado que est sendo fornecido ao programa dever ser informado pelo programador, atravs de declaraes, fazendo com que o programa interprete o dado fornecido de acordo com a declarao. Por exemplo, na linguagem C, declaraes tipo int num; (inteiro) ou float sal (real); indicam que a varivel num um nmero inteiro (int) e a varivel sal um nmero real (float), representao cientfica, isto , representado na forma [(Sinal) Valor x Base (elevada a Expoente)]. Declaraes tipo char letra; indicam que a varivel um caractere. A forma mais intuitiva de representar nmeros seria atravs da converso do nmero decimal para seu correspondente em binrio. Como os computadores operam sempre em binrio, essa seria a forma mais imediata e eficiente. No entanto, quando queremos representar nmeros muito grandes, essa forma se torna insuficiente. A faixa de nmeros que podem ser representados em ponto fixo insuficiente para a maioria das aplicaes cientficas, onde existe a necessidade de representar-se nmeros muito grandes e/ou nmeros muito pequenos. Para contornar este problema, desenvolveu-se a notao cientfica, onde um quintilho representado por 1,0 x 1018, em vez de escrev-lo por extenso (1 000 000 000 000 000 000). A representao de nmeros em ponto flutuante basicamente a verso binria da notao cientfica. Um nmero em ponto flutuante, representado em binrio, deve fornecer as informaes relativas ao significando (seu sinal e sua magnitude) e ao expoente (tambm seu sinal e sua magnitude). Diversas representaes podem ser utilizadas para isto (sinal/magnitude, complemento de dois, etc). Devido a isto, existem diversos formatos adotados para representar os nmeros em ponto flutuante. Muitos deles so especficos para uma determinada famlia de computadores ou para um determinado fabricante. Assim, um nmero em notao cientfica pode ser representado por um produto de dois fatores: o primeiro fator indica o sinal do mmero mais a sua parte significativa, sua preciso, e a segunda parte indica a grandeza do nmero, representada por uma potncia; justamente o valor do expoente que marca essa grandeza. Portanto, temos: N = + M x B+ E Onde,

Arquitetura e Organizao de Computadores

Pgina 19

N nmero que se deseja representar + - sinal do nmero M dgitos significativos do nmero (significando) B base de exponenciao + E valor do expoente, com seu sinal Dessa forma possvel manipular preciso (nmero de dgitos significativos do significando) e grandeza (expressa pelo expoente) do nmero.

2.2 Representao normalizada Existem diferentes maneiras de escrever o mesmo nmero. A forma normalizada aquela que apresenta um nico dgito, diferente de zero, antes da vrgula. Exemplo: 110101 = 1,10101x25 ou, escrevendo-se o prprio 5 tambm na base dois, 1,10101x2101. A base 2 est sendo mantido na forma decimal, 2 , e no na binria 10 , porque ela no precisar ser representada, por ser implcita. Chama-se significando ao nmero 1,10101 e expoente ao nmero 101, deste exemplo. Seguem-se outros exemplos:

1110,01 ou 1,11001 x 23 ou 1,11001 x 211 , que corresponde a 14,25, em decimal. 0,0011 ou 1,1 x 2-3 ou 1,1 x 2-11 , que corresponde a 0,1875 em decimal. 0,1001 ou 1,001 x 2-1 , que corresponde a 0,5625 em decimal.

Pode-se observar que, para se representar um nmero real, necessrio armazenar o significando e o expoente, sendo dispensvel representar o "1,", por estar sempre presente, sendo, tambm, desnecessrio, armazenar o dois, base do sistema.

2.3 Converso para Ponto Flutuante


Para um dado sistema, a representao em Ponto Flutuante especificada a partir da identificao dos seguintes elementos: 1. Quantidade de palavras de dados (total de bits/bytes da representao). 2. Modo de representao do significando (normalizado, etc.,). 3. Modo de representao do expoente. 4. Quantidade de bits definida para o significando e para o expoente. 5. A posio, no formato, do sinal do nmero, do significando e do expoente. 6. O valor da base de exponenciao Como exemplo, considere o formato a seguir:
Arquitetura e Organizao de Computadores Pgina 20

Considerando o formato acima, como seria a representao interna de 407,37510? 1. Converso direta para a base:

N = 407,37510 = 110010111,0112 = 110010111,011 x 20. N = 1,10010111011 x 28. S= 0 (nmero positivo). E= 0001000.

2. Significando normalizado: 3. Determinao dos valores:

M= 10010111011000000000000, pois no h necessidade de representar o 1 antes da vrgula, que na forma normalizada sempre estar presente. 3. Representao interna: 0 0001000 100101110110000000000000

Faixa de Representao

Arquitetura e Organizao de Computadores

Pgina 21

Como vimos anteriormente, a representao em ponto flutuante tem limites de alcance e de preciso. O alcance limitado pelo nmero de bits do expoente. A preciso determinada pelo nmero de bits do significando. Ocorre overflow quando o valor absoluto do dado a ser representado excede a capacidade de representao, porque o nmero de bits do expoente (neste caso, positivo) insuficiente para representar o dado. Um outro problema ocorre na regio de nmeros prximos de zero, que tem o maior expoente negativo possvel. Ocorre underflow quando o valor absoluto do dado a ser representado to pequeno que fica menor que o menor valor absoluto representvel. Nesse caso, o expoente negativo mas no representa os nmeros muito prximos de zero e ocorre uma descontinuidade na representao, com os nmeros prximos a zero no sendo representados. Underflow no o mesmo que impreciso. Dados na faixa de underflow no podem ser representados, ocorrendo estouro no expoente. No caso de impreciso, a normalizao permite que o dado seja representado, porm com perda de preciso. Observe que temos sete regies distintas, conforme o quadro:

Exemplo: E= 2 dgitos, B= 10, M= 3 dgitos.


mNN= -0,999 x 1099. MNN= -0,100 x 10-99. mNP= 0,100 x 10-99. MNP= 0,999 x 1099.

2.4 CARACTERSTICA Caracterstica (tambm chamada de REPRESENTAO POLARIZADA) o expoente, representado na forma de excesso de n ( ou Polarizao), ou seja, CARACTERSTICA = EXPOENTE + EXCESSO

Arquitetura e Organizao de Computadores

Pgina 22

Para se definir a maneira como o computador armazenar o nmero real em ponto flutuante, preciso definir o nmero de bits que ele usar para representar o significando e o nmero de bits para o expoente. Suponha-se que um determinado computador reserve 1 byte, isto , 8 bits, para representar os nmeros reais. Admita-se que usa o primeiro bit para sinal do nmero, trs bits seguintes para o expoente e os ltimos quatro bits para o restante do significando.

bit 0

bit 1

bit 2

bit 3

bit 4

bit 5

bit 6

bit 7

O bit 0 indica o sinal do nmero: 0 positivo, 1 negativo. Os bits 1, 2 e 3 constituem o expoente e precisam representar tanto expoentes positivos quanto expoentes negativos. Com esses trs bits, h 8 possibilidades: 000, 001, 010, 011, 100, 101, 110, 111, que representariam nmeros de 0 at 7. Isso no serviria pois precisamos de expoentes negativos, alm dos positivos. Deram-se aos expoentes 000 e 111 significados especiais, a serem tratados daqui a pouco. Como devemos representar expoentes tanto negativos, para os nmeros menores que zero, quanto positivos, para nmeros maiores que zero, vamos assumir que o nmero 3, isto , 011 represente o expoente zero. Os anteriores representaro os expoentes negativos e os posteriores os expoentes positivos. Dessa maneira, o nmero que representa o expoente ser o nmero em binrio menos trs, conforme tabela a seguir.

Bits valor expoente

001 1 -2

010 2 -1

011 3 0

100 4 1

101 5 2

110 6 3

importante observar que num nmero diferente de zero, normalizado na base 2, o significando sempre comear por 1. Assim sendo, no h necessidade de se representar o (1. ) pois isso ficaria implcito, bastando representar os dgitos que aparecem depois da vrgula. Sendo m o nmero de bits representados do significando, o nmero representado ter, sempre, m+1 dgitos.

Observem-se os exemplos a seguir: 3,5 . 2,75 . 7,5 . -7,25 . -0,375. 11,1 10,11 111,1 -111,01 1,11 x 21 1,0110 x 21 1,1110 x 22 1,1110 x 210 -1,1101 x 22 -1,1101 x 210 1,1100 x 21 01001100 01000110 01011110 11011101 10011000
Pgina 23

-0, 011 -1,1000 x 2-2 -1,1000 x 2-10

Arquitetura e Organizao de Computadores

Como se pode ver, o maior nmero positivo que pode nele ser representado :

que corresponde a 1,1111 x 23 , isto : 1111,1, ou 15,5. O menor nmero positivo seria: 0 0 0 1 0 0 0 0

que corresponde a 1,0000 x 2-2 , isto : 0,25. Lembremo-nos que os expoentes 000 e 111, no foram considerados, at agora; eles tem tratamento especial. Usa-se o expoente 000 , quando se quer indicar que o nmero no est normalizado, ficando o 000 como o menor expoente, isto , -2 , no nosso exemplo. O significando passa a ser 0, _ _ _ . Onde, depois da vrgula, esto os dgitos do significando, s que, agora, sem a precedncia do (1, ) , como era antes, e sim (0, ). Neste caso, no teremos, mais, m+1 dgitos significativos, como tnhamos quando os nmeros eram normalizados. O expoente 111 reservado para representar mais infinito, com zero na frente (01110000) e menos infinito com 1 na frente (11110000), em ambos os casos o significando sendo 0000. O mesmo expoente 111 ainda utilizado para caracterizar indeterminao, 11111000. As demais combinaes com o expoente 111 no so vlidas, sendo consideradas (not a number).A representao substituindo expoente por caracterstica acarreta que todas as
caractersticas sero positivas, de forma que possvel eliminar a representao do sinal do expoente.

Se CARACTERSTICA = EXPOENTE + EXCESSO, sendo M o nmero de bits para a representao da caracterstica, temos:
Arquitetura e Organizao de Computadores Pgina 24

0 = - 2M-1 + EXCESSO logo: EXCESSO = + 2M-1 Ex: Para 8 bits, temos, EXCESSO = 2M-1 = 2 8-1 = 2 7 = 128

EXEMPLO DE REPRESENTAO EM PONTO FLUTUANTE Representao com base 2 (PDP 11- o primeiro computador/processador de 16 bits da DIGITAL EQUIPAMENT CORPORATION. O PDP-11 inaugurou o conceito de compatibilidade, que poupava tempo e dinheiro ao usurio. Permitia transportar aplicaes de mquinas de menor porte para maior porte, e vice-versa; eliminava a necessidade de reescrever software e reduzia os investimentos em perifricos.) Os microcomputadores podem representar os dados em ponto flutuante com base implcita = 2, no seguinte formato:

sendo SN = sinal do dado CARACTERSTICA = o expoente, representado na forma de excesso de n, ou seja, CARACTERSTICA = EXPOENTE + EXCESSO No caso, o excesso de 12810, portanto: CARACTERSTICA = EXPOENTE + 12810 Exemplificando: expoente = - 28 logo caracterstica = - 2810 + 12810 = 10010 Assim, uma caracterstica entre 0 e 12710 significa que o expoente negativo, enquanto uma caracterstica entre 129 e 255 significa que o expoente positivo (caracterstica igual a 1280 significa expoente igual a 0). Exemplo: Representar 25,510 Como a base implcita 2, vamos converter para binrio: 2510 = 110012 Parte fracionria: 0.5 x 2 = 1,0 Logo: 25,510 = 11001,12 x 20 Normalizando: 11001,12 x 20 = 1,100112 x 24. Como o primeiro dgito do significando ser sempre 1, no caso da base 2, economiza-se um bit no significando no armazenando o primeiro bit do significando, j que est implcito que todos os nmeros tero significando iniciando com 1. Em binrio com 23 bits, o significando normalizada ser (lembrando que o primeiro bit 1 no representado): 100.1100.0000.0000.0000.0000 Obs.: Como o nmero 1,100112 ser representado em 23 bits, os bits no representativos ( direita) sero preenchidos com zeros. Como o expoente 4, a caracterstica ser: 410 + 12810 = 13210. Em binrio com 8 bits, ser: 1000 0100
Arquitetura e Organizao de Computadores Pgina 25

Portanto, a representao ser:

2.5 O Padro IEEE 754 O Instituto de Engenharia Eltrica e Eletrnica ou IEEE uma organizao profissional e no-lucrativa, fundada nos Estados Unidos. a maior (em nmero de scios) organizao profissional do mundo. A IEEE foi formada em 1963 pela fuso do Instituto de Engenheiros de Rdio (IRA) com o Instituto Americano de Engenheiros Eltricos (AIEE). O IEEE tem filiais em muitas partes do mundo, sendo seus scios engenheiros eltricos, cientistas da computao, profissionais de telecomunicaes, etc. Sua meta promover conhecimento no campo da engenharia eltrica e eletrnica. Um de seus papis mais importantes o estabelecimento de padres para formatos de computadores e dispositivos. A norma IEEE 754, publicada em 1985, procurou uniformizar a maneira como as diferentes mquinas representam os nmeros em ponto flutuante, bem como devem oper-los. Essa norma define trs formatos bsicos para os nmeros em ponto flutuante: o formato simples, com 32 bits, o duplo com 64 bits e o qudruplo com 128 bits (ainda existem o simples estendido e o duplo estendido). O primeiro bit para o sinal: 0 representa nmero positivo e 1 representa nmero negativo. No formato simples o expoente tem 8 bits e o significando tem 23 bits; no formato duplo, o expoente tem 11 bits e o significando 52 bits e no formato qudruplo, o expoente tem 15 bits e o significando 111 bits, sendo o primeiro bit 1 normalizado representado neste formato. No formato simples, o menor expoente representado por 00000001, valendo -126, e o maior expoente representado por 11111110, valendo +127. Em ambos os casos, o expoente vale o nmero representado em binrio menos 127. No formato duplo, o menor expoente representado por 00000000001, valendo 1022, e o maior expoente representado por 11111111110, valendo +1023. Em ambos os casos, o expoente vale o nmero representado em binrio menos 1023. Alm dos formatos bsicos, a norma ainda define o formato estendido, com 80 bits e o formato qudruplo, com 128 bits.

Um significando normalizado comea com um ponto binrio, seguido por um bit 1 e depois pelo resto do significando. padro IEEE 754 consiste no primeiro 1 do significando oculto, um ponto oculto e depois os bits da frao. Isto denominado "significando". Todos os nmeros normalizados tem um significando S, no intervalo:
Pgina 26

Arquitetura e Organizao de Computadores

1S2 No permitido ao nmero normalizado ter um expoente s de zeros, ou de s de uns.

FORMATOS Largura do formato Significando Expoente Emx Emn Caracterstica Largura Simples 32 23 +127 -126 +127 8 Duplo 64 52 +1023 -1022 +1023 11

Exemplo: Mostrar a representao do valor -0,7510 no formato de ponto flutuante padro IEEE 754 para preciso simples. O valor -0,7510 tambm pode ser representado como 1,12x2-1 Usando a forma geral de representao de nmeros em ponto flutuante usando o padro IEEE 754, em preciso simples:

1 01111110 10000000000000000000000

Arquitetura e Organizao de Computadores

Pgina 27

Nesta notao, cinco grupos diferentes de nmeros podem ser representados: nmeros normalizados, zero, nmeros no-normalizados, infinito e no-nmeros (NaN): 1. Os nmeros normalizados utilizam um expoente que vai de 1 a 254 (ou 1 a 2046, ou 1 a 32766), o primeiro bit do significando (L) sempre um e por isto no representado. 2. O Zero representado por um nmero todo em zero (E=F=L=0); note-se que o zero neste caso pode ter sinal. 3. Nmeros no normalizados possuem o expoente em zero (E=0) e uma frao no zero. Seu uso restrito para representao do nmeros que no podem ser normalizados sem causar underflow. 4. O Infinito representado pelo maior valor do expoente (E=255 ou 2047 ou 32767) e por uma frao em zero (F=L=0). Note-se que o infinito pode ter sinal. 5. No-nmeros (Not a Number) so representados pelo maior expoente e por uma frao diferente de zero. Seu uso previsto inclui a indicao de cdigos de erro, situaes imprevistas, etc. O bit de sinal (S) representado no bit mais significativo; os bits seguintes representam o expoente. Os bits menos significativos so destinados ao significando. Note-se que o bit L no representado (exceto na notao qudrupla).

Arquitetura e Organizao de Computadores

Pgina 28

2.6 Cdigo ASCII(6)


O uso mais importante do byte (grupo de 8 bits 0 ou 1) , provavelmente, para representar um cdigo de caracter. Todos os caracteres digitados no teclado, mostrados na tela ou impressos numa impressora, possuem um valor numrico. Para padronizar estes valores, criou-se o conjunto de caracteres ASCII. O conjunto ASCII bsico possui 128 cdigos. Os 128 restantes so utilizados com valores para caracteres adicionais como caracteres europeus, smbolos grficos, letras gregas e smbolos matemticos. Antes de maio de 1961 a maioria dos sistemas de computadores tinha uma maneira particular de representar os caracteres alfanumricos. Assim, foi proposto o uso de um cdigo comum, a fim de possibilitar a comunicao entre os computadores, objetivando permitir a troca de dados entre mquinas de diferentes tipos e fabricantes. O "American National Standards Institute" aceitou a proposta de Robert W. Bemer e sua equipe para desenvolver o "American Standard Code for Information Interchange" (Cdigo Padro Norte-americano para Intercmbio de Informaes), hoje conhecido como cdigo ASCII. Assim, ASCII um cdigo numrico usado para representar os caracteres, entendido por quase todos os computadores, impressoras e programas de edio de texto, que usa a escala do decimal 0 a 127. baseado no alfabeto romano, como usado no idioma ingls moderno, e visa padronizar a forma pela qual os computadores representam letras, nmeros, acentos e sinais diversos ( por exemplo: <, {, ] ) e alguns cdigos de controle ( <Crtl> ) que so utilizados para converter todos os smbolos em nmeros binrios, os quais efetivamente podem ser processados. O cdigo permite no s uma melhor compreenso sobre a lgica do funcionamento do computador mas, tambm, possibilita a utilizao de caracteres, cujos smbolos no aparecem no teclado. importante notar que h apenas 95 caracteres que podem ser impressos. E eles so numerados de 32 a 126 pois os primeiros cdigos (de 0 a a 31) foram reservados para caracteres de controle, ou seja, que controlam funes ou equipamentos. Esses caracteres de controle tiveram sua origem nos primrdios da computao, quando eram utilizadas mquinas Teletype (como mquinas de escrever eletro-mecnicas), fitas de papel perfurado e impressoras de cilindro, portanto muitos deles so dirigidos a estes equipamentos. Por exemplo: - o carter 10 representa a funo "LINE FEED", que faz com que uma impressora avance seu papel; - o carter 27 representa a funo "escape" determinada pela tecla <ESC>, encontrada no canto superior esquerdo nos teclados.

Arquitetura e Organizao de Computadores

Pgina 29

Tabela ASCII
Binrio 0010 0000 0010 0001 0010 0010 0010 0011 0010 0100 0010 0101 0010 0110 0010 0111 0010 1000 0010 1001 0010 1010 0010 1011 0010 1100 0010 1101 0010 1110 0010 1111 0011 0000 0011 0001 0011 0010 0011 0011 0011 0100 D H 32 20 33 21 34 22 35 23 36 24 37 25 38 26 39 27 40 28 41 29 42 2A 43 2B 44 2C 45 2D 46 2E 47 2F 48 30 49 31 50 32 51 33 52 34 G Binrio vazio 0100 0000 ! " # $ % & ' ( ) * + , . / 0 1 2 3 4 0100 0001 0100 0010 0100 0011 0100 0100 0100 0101 0100 0110 0100 0111 0100 1000 0100 1001 0100 1010 0100 1011 0100 1100 0100 1101 0100 1110 0100 1111 0101 0000 0101 0001 0101 0010 0101 0011 0101 0100 D 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 H 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 G @ A B C D E F G H I J K L M N O P Q R S T Binrio 0110 0000 0110 0001 0110 0010 0110 0011 0110 0100 0110 0101 0110 0110 0110 0111 0110 1000 0110 1001 0110 1010 0110 1011 0110 1100 0110 1101 0110 1110 0110 1111 0111 0000 0111 0001 0111 0010 0111 0011 0111 0100 D 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 H 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 G ` a b c d e f g h i j k l m n o p q r s t

Arquitetura e Organizao de Computadores

Pgina 30

0011 0101 0011 0110 0011 0111 0011 1000 0011 1001 0011 1010 0011 1011 0011 1100 0011 1101 0011 1110 0011 1111

53 35 54 36 55 37 56 38 57 39 58 3A 59 3B 60 3C 61 3D 62 3E 63 3F

5 6 7 8 9 : ; < = > ?

0101 0101 0101 0110 0101 0111 0101 1000 0101 1001 0101 1010 0101 1011 0101 1100 0101 1101 0101 1110 0101 1111

85 86 87 88 89 90 91 92 93 94 95

55 56 57 58 59 5A 5B 5C 5D 5E 5F

U V W X Y Z [ \ ] ^ _

0111 0101 0111 0110 0111 0111 0111 1000 0111 1001 0111 1010 0111 1011 0111 1100 0111 1101 0111 1110

117 118 119 120 121 122 123 124 125 126

75 76 77 78 79 7A 7B 7C 7D 7E

u v w x y z { | } ~

Referncias Bibliogrficas:
(1) Acessado em: http://www.users.rdc.puc-rio.br/rmano/comp1inf.html (2) Acessado em: http://www.inf.puc-rio.br/~francis/Organizacao.htm (3) Acessado em: http://icea.gov.br/ead/anexo/index.htm (4) Gonick, L. Introduo Ilustrada Computao. Editora Harper & Row do Brasil, 1984. (5) Monteiro, M. Introduo Organizao de Computadores. Editora LTC, 2 Edio. (6) Acessado em: http://www.ufpa.br/dicas/progra/arq-asc.htm

Arquitetura e Organizao de Computadores

Pgina 31

You might also like