Anda di halaman 1dari 8

Curso Bsico de Hardware

Sistemas de Numerao

Verso 1/2004
Profs. M.Sc. Lucio M. Duarte e Ph.D. Avelino Zorzo Faculdade de Informtica - PUCRS

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1 decimal. Um sistema de numerao formado por um conjunto de smbolos utilizados para representao de quantidades (alfabeto) e as regras que definem a forma de representao. Quando falamos em sistema decimal, estamos estabelecendo que a nossa base de contagem o nmero 10, pois o sistema decimal possui um alfabeto de 10 smbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. Este conjunto de smbolos do alfabeto define o que chamado de base do sistema de numerao. Assim, se temos 10 smbolos, estamos trabalhando sobre a base 10. Um sistema de numerao determinado fundamentalmente pela sua base. 2.1 TIPOS DE SISTEMAS DE NUMERAO

REPRESENTAO DE DADOS E SISTEMAS DE NUMERAO


Profs. M.Sc. Lucio M. Duarte e Ph.D. Avelino Zorzo1 Faculdade de Informtica - PUCRS

REPRESENTAO DE DADOS

Acredita-se que a criao de nmeros veio com a necessidade de contar, seja o nmero de animais, alimentos, ou coisas do gnero. Como a evoluo nos legou algumas caractersticas, como os cinco dedos em cada mo e cinco dedos em cada p, seria muito natural que os primeiros sistemas de numerao fizessem uso das bases 10 (decimal) e 20 (vigesimal). O nmero 80 em francs, por exemplo, escrito como quatre-vingt (ou, quatro vezes o vinte), remanescente de um sistema vigesimal. Computadores modernos, por outro lado, usam chaves eltricas para representar nmeros e caracteres. Cada chave pode estar ligada ou desligada e a combinao dos estados de um conjunto destas chaves representa algo (nmero ou caracter). Visto que o crebro de um computador simplesmente um conjunto de chaves eltricas, onde cada chave possui apenas dois estados possveis (ligada/desligada), computadores pensam usando apenas 2 dgitos: 0 e 1 (0 para desligada e 1 para ligada). Portanto, computadores se utilizam de uma forma de representao de dados para descrever nmeros e caracteres na forma de um conjunto de 0s e 1s. Linguagens humanas usam palavras que contm um nmero varivel de caracteres. Computadores no possuem a capacidade de trabalhar com palavras de tamanho varivel. Por isso, suas palavras (representao de caracteres e nmeros) tm um nmero predeterminado de caracteres, que, na linguagem binria, so chamados de bits (binary digits). Os primeiros computadores pessoais que se tornaram populares usavam 8 bits (1 byte- binary term) para representar uma palavra. Assim, o computador sabia onde comeava uma palavra e onde ela acabava apenas contando o nmero de bits. A partir da evoluo dos computadores, as palavras evoluram para 16 bits (PC 286), 32 bits (PC 386-Pentium) e 64 bits (maioria dos computadores de hoje). Dessa forma, uma palavra do computador passou a no ser mais composta apenas por um byte, mas por 2, 4 e agora 8 bytes. Essa evoluo permitiu que cada vez mais coisas pudessem ser representadas atravs das palavras do computador, aumentando o nmero de instrues inteligveis por ele.

Sistemas de numerao podem ser divididos em 2 grupos: os sistemas noposicionais e os sistemas posicionais. 2.1.1 SISTEMAS NO-POSICIONAIS So aqueles em que o valor atribudo a um smbolo no se altera, independentemente da posio em que ele se encontre no conjunto de smbolos que est representando um nmero. Um exemplo de sistema no-posicional o sistema de numerao romano. Neste sistema temos os smbolos I, V, X, L, C, D e M. Em qualquer posio dentro de um conjunto destes smbolos, eles no alteram seus valores (I 1, V 5, X 10, L 50, C 100 e M 1000). No sistema de numerao romano antigo por exemplo (onde o nmero 4 era representado por IIII), a posio do smbolo tinha sempre o mesmo significado, ou seja o nmero 1.469 era representado como MCCCCLXVIIII. Esta forma era somente por convenincia pois ele tambm poderia ser representado como CMCCLCIIXVII. J no sistema romano moderno, o que se altera a sua utilizao para a definio da quantidade representada (porm individualmente eles continuam representando a mesma quantidade), a partir das regras definidas pelo sistema: Cada smbolo colocado direita de um maior adicionado a este. Ex.: XI 10 + 1 = 11; Cada smbolo colocado esquerda de um maior tem o seu valor subtrado deste. Ex.: IX 10 1 = 9; Assim, o nmero XXI representa 21 em decimal (10 + 10 + 1), enquanto que XIX representa 19 (10 + 10 1). 2.1.2 SISTEMAS POSICIONAIS So aqueles em que o valor atribudo a um smbolo depende da posio em que ele se encontra no conjunto de smbolos que est representando um nmero. O exemplo tpico de sistema posicional o sistema de numerao decimal. Neste sistema, por exemplo, o smbolo 5 pode representar o valor 5, o valor 50, como em 57 (50 + 7), o valor 500, como em 503 (500 + 3), e assim por diante. Isto , a regra vlida para o sistema decimal que quanto mais esquerda do nmero o smbolo est, mais ele vale. Na verdade, a cada posio mais esquerda, o smbolo vale 10 vezes mais.

SISTEMAS DE NUMERAO

Desde tempos remotos o homem utiliza a escrita para registrar e transmitir informao. A escrita vai do antigo hierglifo egpcio at o alfabeto latino atual (ou alfabeto chins/japons). O alfabeto, como conjunto de smbolos, se desenvolveu, originalmente na Grcia e, posteriormente, em Roma e constitui a origem de nosso alfabeto atual. Uma das primeiras tentativas de registro de quantidades sob a forma escrita foi o sistema de numerao indo-arbico, do qual derivado o atual sistema de numerao
1 Material originalmente elaborado pelo Prof. Lcio, adaptado e complementado pelo Prof. Avelino. Revisado pelo Prof. PhD Luis Fernando Pereira Faculdade de Engenharia/PUCRS

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1 2.2 REPRESENTAO NUMRICA

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1 Se b0, b1, b2, etc., so os bits que se coloca em cada posio, a quantidade representada valer: + b424 + b323 + b222 + b121 + b020 + b-12-1 + ... Para evitar a representao mediante o somatrio, adota-se a conveno de separar mediante vrgulas as casas 20 e 2-1, de tal modo que a representao fique: ... b4 b3 b2 b1 b0, b-1 b-2 Em que bi = 0 ou 1. Exemplo: o nmero binrio 10011,01 representa a quantidade: 1.24 + 0.23 + 0.22 + 1.21 + 1.20 + 0.2-1 + 0.2-2 A partir do conhecimento sobre a base, podemos saber quantos nmeros ou caracteres podem ser representados de acordo com o nmero de bits utilizados. Sabe-se, por exemplo, que com um bit podemos representar dois valores diferentes: 0 e 1. Se tivermos 2 bits, ento poderemos representar 4 diferentes valores com as combinaes dos valores possveis de cada bit. Isto , chamando-se o primeiro bit de b1 e o segundo de b2, podemos ter todos valores possveis da combinao de valores b1b2. Como tanto b1 quanto b2 podem assumir o valor 0 ou 1, teremos as seguintes possveis combinaes: Bit b1 0 0 1 1 Bit b2 0 1 0 1 Valor b1 b2 00 01 10 11

A representao de quantidade no computador se baseia na representao sistemas numricos tradicionalmente conhecidos. Estes sistemas numricos so posicionais, isto , cada quantidade representada em uma nica forma, mediante uma certa combinao de smbolos, que tm um significado distinto, segundo sua posio. No sistema decimal, como j comentado, cada posio tem um valor intrnseco que equivale a dez vezes o valor da posio que est imediatamente a sua direita. Supondo que a cada posio designamos uma casa, o valor das casas vai aumentando para a esquerda de 10 em 10 vezes e os dgitos ou smbolos que podemos colocar nelas so: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9, os quais possuem um valor intrnseco distinto para cada um. Se representarmos o nmero 245 assinalando um smbolo a cada casa, indicando o valor de cada casa, teremos: Valor da casa Dgitos 1000 0 100 2 10 4 1 5 0,1 0 0,01 0

O significado de cada dgito em determinada posio o valor da casa multiplicado pelo valor do dgito e a quantidade representada a soma de todos os produtos. A partir disto podemos dizer que o valor de um nmero X

X = anBn + an-1Bn-1 + ... + a0B0


onde an>0, cada ai um inteiro no negativo e n um valor que representa a posio mais esquerda do nmero, ou posio mais significativa do nmero. Este valor contado atribuindo-se o valor zero posio mais direita (no caso de um valor inteiro) e somandose 1 at chegar ltima posio do nmero. Esta representao de X nica e chamada de representao de X na base B, representada como (X)B . Assim, temos que o nmero 3547, por exemplo pode ser representado da seguinte forma 3.103 + 5. 102 + 4.101 + 7. 100 = 3000 + 500 + 40 + 7 = 3547 2.3 SISTEMA BINRIO

No sistema binrio, cada nmero representado de uma forma nica, mediante uma combinao de smbolos 0 e 1, que, em nosso caso, ser uma combinao de estados 1 e estados 0 dos bits que formam um conjunto ordenado. Designaremos por bi cada bit deste conjunto ordenado, no qual o sub-ndice i corresponde ao nmero da casa que o bit est ocupando. Seguindo a lgica de que cada posio em nmero decimal vale 10 vezes mais que a posio imediatamente a sua direita e 10 vezes menos que a posio imediatamente a sua esquerda, no sistema binrio cada casa vale 2 vezes mais que aquela que est imediatamente a sua direita e 2 vezes menos que a que est a sua esquerda. Desta forma, teremos que, se o valor da primeira casa da direita for 20, a segunda valer 20 x 2 = 21, e assim consecutivamente para a esquerda. Os valores das casas ficam claros no seguinte esquema:

Da mesma forma, se tivermos 3 bits, poderemos combinar os valores destes trs bits e obteremos 8 diferentes valores: 000, 001, 010, 011, 100, 101, 110 e 111. Disso, podemos concluir que, quando temos 1 bit conseguimos representar 2 valores distintos (21 valores); quando temos 2 bits, conseguimos representar 4 valores distintos (22 valores); e quando temos 3 bits, podemos representar 8 valores diferentes (23 valores). Logo, para um nmero n de bits, poderemos representar 2n valores distintos. Com isso, com 8 bits poderemos representar 28 = 256 valores distintos. 2.4 SISTEMA HEXADECIMAL

26

25

24

23

22

21

20

2-1

2-2

Como j visto, computadores usam o sistema binrio para representar seus dados. Mas difcil e trabalhoso para um programador descrever com conjuntos de 0 e 1 os nmeros a serem postos na memria do computador por um dado programa. Por isso, usase uma forma mais compacta de representao em que os bits so agrupados de 4 em 4. Assim, cada grupo de 4 bits transformado em um nico smbolo. Como o maior valor representado por um conjunto de 4 bits 1111, o qual representa o valor 15 em decimal, ou 4

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1 seja possvel representar 16 nmeros (0 at 15), este sistema chamado de hexadecimal ou sistema de base 16. No sistema hexadecimal, cada casa vale 16 vezes a que est a sua direita, e os smbolos utilizados so: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F. O smbolo A equivale a dez, o B equivale a onze e assim consecutivamente at F que equivale a quinze, no sistema decimal. Exemplo o nmero hexadecimal A17,B9 representa a quantidade: 10.162 + 1.162 + 7.160 + 11.16-1 + 9.16-2 A representao do conjunto dos smbolos deste sistema mediante grupos de quatro bits, em que cada smbolo se faz corresponder com sua representao binria, apresentada a seguir: (0000)0 (0001)1 (0010)2 (0011)3 (0100)4 (0101)5 (0110)6 (0111)7 (1000)8 (1001)9 (1010)A (1011)B (1100)C (1101)D (1110)E (1111)F

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1 digitais (usados no hardware), que, juntamente com as chamadas portas lgicas (estudadas em estruturas algbricas), so combinados formando o corao do processador, a ULA (Unidade Aritmtica e Lgica), e todas as outras partes que o formam. Atravs de uma srie de circuitos que fazem somas, subtraes, comparaes, entre outros, os bits podem ser interpretados e arranjados da forma que quisermos. Estes conhecimentos so essenciais ainda para o estudo de circuitos digitais, lgica para computao, arquitetura de computadores, entre outras reas. 3.1 BINRIO EM DECIMAL

A converso de binrio em decimal corresponde simplesmente a utilizar a idia vista anteriormente de associao de valores a cada posio (casa) do nmero a partir da base 2, de forma que cada posio mais esquerda vale duas vezes mais que a anterior. O valor de cada posio multiplicado pelo valor do bit da posio. Exemplo: (11001)2 1.24 + 1.23 + 0.22 + 0.21 + 1.20 = 16 + 8 + 0 + 0 + 1 = (25)10 3.2 DECIMAL EM BINRIO

Desta forma, o nosso nmero A17, B9 ficaria em binrio: 101000010111,10111001 possvel considerar, do conjunto de smbolos hexadecimais representado em binrio, aqueles que correspondem a um sistema decimal codificado em binrio. Em tal caso, a expresso binria dos dgitos A, B, C, D, E, F no teria significado.

Mediante divises inteiras sucessivas por dois, tomando-se os restos das divises no sentido ascendente. Exemplo: 197 197 1 2 98 0 2 49 1 2 24 0 2 12 0 2 6 0 2 3 1 2 1 1 (197)10 = (11000101)2 2 0

TRANSFORMAES NUMRICAS

Conforme visto nos sistemas de numerao apresentados, cada um deles possui uma certa proximidade com os outros. Isto torna possvel que valores representados em um dado sistema possam ser convertidos para outro sistema. Isto necessrio porque ns humanos trabalhamos no sistema decimal e o computador, no sistema binrio. Por isso, temos de poder converter valores decimais em valores binrios. Da mesma forma, devemos poder entender os dados gerados pelo computador, o que nos leva a converter valores binrios em decimais. Como, muitas vezes valores hexadecimais so usados para representar dados a serem armazenados na memria, de forma a facilitar o trabalho do programador, tambm devemos saber converter valores decimais para hexadecimais e valores hexadecimais para valores binrios, que so os valores realmente armazenados na memria. O caminho contrrio igualmente importante. Converter valores de um sistema de numerao para outro um processo chamado de converso de bases. Os conceitos vinculados converso de base, clculos aritmticos em diferentes bases e complementos (que veremos mais adiante), so necessrios construo dos computadores. Basicamente estes conceitos so usados para a construo de circuitos 5

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1 3.3 BINRIO EM HEXADECIMAL 3.6

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1 DECIMAL EM HEXADECIMAL

Divide-se o nmero em grupos de quatro bits, a partir da direita, substituindo-se tais grupos pelos smbolos hexadecimais correspondentes. Quando o nmero for fracionrio, deve-se comear a diviso em grupos de quatro, a partir da vrgula, em ambas as direes. Exemplo: (11110001)2 (10010011)2 1111 0001 (F 1)16 = 1001 0011 (9 3)16 = (F1)16 (93)16

Semelhante s transformaes de decimal para binrio, com divises sucessivas pelo nmero 16. Exemplo: 2736 2736 0 16 171 11 16 10 10 16 0 ento: (2736)10 = (AB0)16 mas, (10)10 = (A)16 (11)10 = (B)16

Se a diviso em grupos de quatro deixar o grupo extremo com menos de quatro dgitos, complet-lo com zeros. (101011)2 (101011)2 = (2B)16 3.4 HEXADECIMAL EM BINRIO Usa-se o processo inverso ao anterior. Exemplo: (A56B)16 A 1010 5 0101 6 0110 B 1011 10 1011 0010 1011 (2 B)16 3.7

OUTRAS BASES

O processo de converso de uma base qualquer para a base decimal tem o mesmo formato do processo executado nas sees anteriores para a base binria e para a base hexadecimal (veja Seo 2.2). Para converter um nmero da base decimal para uma base qualquer, novamente, utiliza-se o mesmo procedimento executado para converter para a base binria ou hexadecimal, trocando-se o divisor, ou seja se quiser converter para a base 5 usa-se como divisor o nmero 5 em vez de 2 ou 16.

4
4.1

OPERAES NUMRICAS EM BINRIO


ADIO

(A56B)16 = (1010010101101011)2 3.5 HEXADECIMAL EM DECIMAL

Usa-se o mesmo sistema para transformar binrio em decimal, com a diferena de se usar a base 16. Exemplo: (A6B)16 A 10.16 2 + 6 6.16 1 + B 11.16 0 = 2560 + 96 + 11 = (2667)10

Como se sabe, no sistema decimal, quando se quer somar 9 com 1, o resultado sempre 0 e vai 1, ou seja, igual a 10. No sistema binrio, ocorre o mesmo quando se soma 1 com 1. O resultado 0 e vai 1, ou seja 10. As regras para a adio binria so as seguintes: 0 0 1 1 Exemplos: + + + + 0 1 0 1 = = = = 0 1 1 0 e vai 1 (escreve-se 10, mas diz-se um zero)

(A6B)16 = (2667)10

a) 1010 binrio 1010 + 0111 10001

+ 111 decimal 10 + 7 17

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1 b) 1010 + 101 binrio 1010 + 0101 1111 4.2 SUBTRAO Regras: 0 1 1 0 0 1 0 1 = = = = 0 0 1 1 (com emprstimo de 1). decimal 10 + 5 15 5.1

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1 MDULO DE SINAL (MS)

Neste sistema de representao o bit que est situado mais a esquerda representa o sinal, e o seu valor ser: 0 para o sinal +; e 1 para o sinal -. Os bits restantes representam o mdulo do nmero. Exemplo: Representar 10 e 10 Limitao de 8 bits (N = 8) 10 n 0 sinal 0001010 mdulo -10 n 1 sinal 0001010 mdulo

Exemplos: 1001 - 110 0011 11110 -11011 00011

Denomina-se AMPLITUDE ou FAIXA de representao num determinado mtodo o conjunto de nmeros que podem ser nele representados. Para o sistema mdulo e sinal, a faixa de representao para N dgitos de: - 2 N-1 + 1 <= X <= + 2 N-1 - 1 Para 8 bits a faixa : - 127 <= X <= +127

REPRESENTAO DE NMEROS INTEIROS

Para 16 bits a faixa : - 32767 <= X <= + 32767 Para 32 bits a faixa : - 2147483647 <= X <= + 2147483647 Vantagem: possuir faixa simtrica. Inconvenincia: 2 representaes para o nmero 0. Para 8 bits o 0 tem as seguintes representaes: 00000000 (+0) 10000000 (-0)

At este momento vimos como representar nmeros em diversas bases. Porm os nmeros que representamos at agora foram nmeros Naturais, ou seja positivos. Neste captulo veremos como representar nmeros Inteiros, ou seja nmeros positivos e negativos. Os computadores digitais utilizam principalmente quatro mtodos para representar nmeros inteiros: mdulo de sinal, ou dgito de sinal (MS); complemento de 1 (C1); complemento de 2 (C2); excesso de 2 elevado a N-1. Nessas representaes de nmeros utilizam-se do sistema binrio e considera-se que temos um nmero limitado de dgitos para cada dado numrico, ou seja quando estivermos representando um nmero em binrio deveremos especificar quantos dgitos estaro sendo utilizados para representar este nmero. Esse nmero de dgitos disponvel representado por N. 5.2

COMPLEMENTO DE 1 (C1)

Este sistema de representao tambm utiliza o bit mais esquerda para o sinal, correspondendo o 0 ao sinal + e o 1 ao sinal -. Para os nmeros positivos, os N-1 bits da direita representam o mdulo. O simtrico de um nmero positivo obtido pelo complemento de todos os seus dgitos (trocando 0 por 1 e vice-versa) incluindo o bit de sinal.

10

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1 Exemplo: Representar 10 e 10 Limitao de 8 bits (N = 8) 10 n 0 sinal 0001010 mdulo

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1 Exemplo: Complemento de 2 dos nmeros 10 e 10 Limitao de 8 bits (N = 8) Nmero 10: 10 n 0 sinal 0001010 mdulo

Nmero -10 o complemento do seu simtrico -10 n 1 sinal 1110101 mdulo

Nmero -10: 1 passo: complemento de 1 -10 n 1 sinal 1110101 mdulo

Neste caso, a faixa de representao - 2 N-1 + 1 <= X <= + 2 N-1 - 1 Para 8 bits a faixa : - 127 <= X <= +127

2 passo: 1110101 + 1 1110110 Neste caso a faixa de representao - 2 N-1 <= X <= + 2 N-1 - 1 Para 8 bits a faixa : - 128 <= X <= +127

Para 16 bits a faixa : - 32767 <= X <= + 32767 Para 32 bits a faixa : - 2147483647 <= X <= + 2147483647 Vantagem: possuir faixa simtrica.e facilitar operaes aritmticas Inconvenincia: 2 representaes para o nmero 0. Para 8 bits o 0 tem as seguintes representaes: 00000000 (+0) 11111111 (-0) 5.3 COMPLEMENTO DE 2 ( C2)

Para 16 bits a faixa : - 32768 <= X <= + 32767 Para 32 bits a faixa : - 2147483648 <= X <= + 2147483647 Vantagem: uma nica representao para o 0 e facilitar operaes aritmticas. Para 8 bits teremos: N 0 00000000 (+0) N -0 passo 1 11111111 (-0) Passo 2 1 100000000 estouro desprezado Logo 0 e 0 tm a mesma representao. Incovenincia: Assimetria existem mais valores negativos que positivos. 12

Este sistema de representao utiliza o bit mais esquerda para o sinal, correspondendo o 0 ao sinal + e o 1 ao sinal -. Para os nmeros positivos, os N-1 bits da direita representam o mdulo, igual ao que ocorre em MS e C1. O simtrico de um nmero obtido em dois passos: 1 passo obtm-se o complemento de todos os bits do nmero positivo (trocando 0 por 1 e vice-versa) incluindo o bit de sinal; isto , executa-se o complemento de 1; 2 passo ao resultado obtido no primeiro passo com o complemento de 1, soma-se 1 (em binrio), desprezando o ltimo transporte, se houver.

11

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1

Introduo Informtica Introduo Engenharia de Computao Representao de Dados e Sistemas de Numerao 2004/1 e subtrao. Nesta seo mostraremos como realizar soma e subtrao2 de nmeros binrios em complemento de 1 e complemento de 2. 6.1 SOMA EM COMPLEMENTO DE 1

5.4

EXCESSO DE 2 ELEVADO A N-1

O mtodo de representao em excesso no utiliza nenhum bit para o sinal, de modo que todos os bits representam um mdulo ou valor. Esse valor corresponde ao nmero representado mais um excesso, que para N bits igual a 2 elevado a N1. Exemplo: para 8 bits o excesso 128 ( 27 = 128), logo o nmero 10 representado por 10 + 128 = 138; e o nmero 10 representado por 10 + 128 = 118. O nmero 10 10001010 O nmero 10 01110110 Neste mtodo o nmero 0 tem uma nica representao, que para 8 bits corresponde a: nmero 0 (0 + 128) = 10000000 Neste caso a faixa de representao assimtrica (o que inconveniente) e dada por: - 2 N-1 <= X <= + 2 N-1 - 1 Para 8 bits a faixa : - 128 <= X <= +127 Para 16 bits a faixa : - 32768 <= X <= + 32767 Para 32 bits a faixa : - 2147483648 <= X <= + 2147483647 interessante observar que todo o nmero representado em excesso igual a sua correspondente representao em complemento de 2, mas com o 1 dgito da esquerda trocado. 5.5 CONSIDERAES

Na aritmtica de complemento de 1, dois nmeros so somados da mesma forma que na representao binria. Com a diferena que deve ser somado o vai-um ao resultado (se o vai-um for zero ento no necessrio realizar esta soma). Exemplo: Somar os valores 10 e -3 em complemento de 1, para 8 bits 10 em complemento de 1 00001010 - 3 em complemento de 1 11111100 somando, resulta em 1 00000110 00000110 + 1 00000111 (7) que o resultado da operao. 6.2 SOMA EM COMPLEMENTO DE 2

Na aritmtica em complemento de 2, o processo idntico ao de complemento de 1, desprezando-se o vai-um (carry), se houver. Exemplo: somar os valores 10 e -3 em complemento de 2, para 8 bits 10 em complemento de 2 - 3 em complemento de 2 somando carry Observe que houve carry. Este carry deve ser desprezado. 00001010 11111101 1 00000111 (10) (-3) (7)

Cabe salientar que nesta seo mostramos como representar nmeros positivos e negativos em binrio e as formas de representao MS, C1 e C2 tem sempre a mesma representao para nmeros positivos, diferenciando somente na representao de nmeros negativos.

ARITMTICA COMPLEMENTAR

Uma das grandes vantagens de se representar nmeros em complemento de 1 ou complemento de 2 em relao a digito de sinal a facilidade de realizar operaes de soma
2 Subtrao realizada na realidade pela soma de um nmero positivo com um nmero negativo, ou seja 5 3 na verdade realizado como 5 + (-3).

13

14

Anda mungkin juga menyukai