Você está na página 1de 24

REPRESENTAÇÃO DE DADOS

Os conceitos vinculados à conversão de base, cálculo aritméticos em diferentes bases e


complementos, são necessários à construção dos computadores. Basicamente estes
conceitos são usados para a construção de circuitos digitais (usados no HW), que
juntamente com as chamadas portas lógicas (estudadas em estruturas algébricas), são
combinados formando o coração do processador, a ULA (Unidade Aritmética e Lógica), de
onde partem todas as outras partes que o formam. Através de uma série de circuitos que
fazem somas, subtrações, comparações, entre outros, os bits podem ser interpretados e
arranjados da forma que quisermos. Estes conhecimentos são essenciais ainda para o estudo
de circuitos digitais, lógica para computação, arquitetura de computadores, entre outras
áreas.

SISTEMAS DE NUMERAÇÃO

EVOLUÇÃO:

Desde tempos remotos o homem utiliza a escrita para registrar e transmitir informação. A
escrita vai do antigo hieroglifo egípcio até o alfabeto latino atual.
O alfabeto, como conjunto de símbolos, se desenvolve originalmente na Grécia 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
numeração indo-arábico, do qual são derivados os atuais sistemas de numeração decimal.
O SISTEMA DE NUMERAÇÃO é o conjunto de símbolos utilizados para representação
de quantidades e as regras que definem a forma de representação. Um sistema de
numeração é determinado fundamentalmente pela base (número de símbolos utilizados). A
base é o coeficiente que determina qual o valor de cada símbolo de acordo com a sua
posição.

OBS: dado – elementos distintos de uma informação;


Informação – coleção de dados representada de forma compreensível ao ser
humano.

TIPOS DE SISTEMAS DE NUMERAÇÃO

SISTEMAS NÃO POSICIONAIS

São aqueles em que o valor atribuído a um símobolo não se altera, independentemente da


posição em que ele se encontra no conjunto de símbolos que está representando uma
quantidade.
Ex. Sistema de numeração romano

XXI X I X

10 10 1 10 1 10

1
SISTEMAS POSICIONAIS

São aqueles em que o valor atribuído a um símbolo depende da posição em que se encontra
no conjunto no conjunto de símbolos que está representando uma quantidade.
Ex. Sistema de numeração decimal

5 7 3 3 5 7 7 3 5

500 70 3 300 50 7 700 30 5

ELEMENTOS BIESTÁVEIS

A base física da informação no computador é o elemento biestável. Um elemento biestável


é um dispositivo que pode representar somente dois estados, o estado 0 e o estado 1. Ex.
Chave: aberta e fechada; lâmpada: acesa e apagada.
Um conjunto formado por dois elementos terá quatro estados possíveis e poderá representar
quatro opções: 00, 01, 10 e 11. Um conjunto de 3 elementos biestáveis representará oito
opções e, em geral, um conjunto com n elementos poderá representar até 2ⁿ opções. Com
oito elementos, como em um byte, poderemos representar até 2ⁿ, onde n=8, ou seja, 256
elementos, de 0 a 255.
As formas de assinalar números e outras informações a conjuntos de bits são, em realidade,
muitas, existindo formas padrões de agrupar os bits e os estados que estes conjuntos podem
representar.

REPRESENTAÇÃO NUMÉRICA

A representação de quantidade no computador se baseia na representação de quantidades


mediante sistemas numéricos tradicionalmente conhecidos. Estes sistemas numéricos são
posicionais, isto é, cada quantidade é representada em uma única forma, mediante uma
certa combinação de símbolos, que tem um significado distinto, segundo sua posição.
No sistema decimal, por exemplo, cada posição tem um valor intrínseco que equivale a dez
vezes o valor da posição que está imediatamente a sua direita. Supondo que a cada posição
designamos uma casa, o valor das casas vai aumentando para a esquerda de 10 em 10 vezes
e os dígitos ou símbolos que podemos colocar nelas são 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9, os quais
possuem um valor intrínseco distinto para cada um.
Se representarmos o número 245 assinalando um símbolo a cada casa, indicando o valor de
cada casa, teremos:

Valor da 1000 100 10 1 0,1 0,01


casa
Dígitos 0 2 4 5 0 0

2
O significado de cada dígito em determinada posição é o valor da casa multiplicado pelo
valor do dígito e a quantidade representada é a soma de todos os produtos.
Um sistema numérico deste tipo, em que o valor de cada casa é dez vezes o valor da casa
imediatamente a sua direita, é conhecido como sistema decimal, ou de base dez. Se o valor
da casa é um outro número de vezes o valor da casa à direita, o sistema poderá ser de base
dois ou binário, de base dezesseis ou hexadecimal, etc. Para cada um destes sistemas
necessitamos de um conjunto de símbolos distintos. Por exemplo, o sistema hexadecimal
utiliza os símbolos 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F, onde A equivale a dez, B
equivale a onze e assim consecutivamente até F que equivale a quinze.
Deduzimos, então, que, para cada sistema numérico, utilizamos a quantidade de símbolos
que representa a base, quer dizer, para o sistema de base dez, utilizaremos dez símbolos,
para o sistema hexadecimal, utilizaremos dezesseis símbolos, e para o sistema binário,
utilizaremos apenas dois símbolos.
No computador, temos em princípio, apenas dois símbolos (0 e 1) portanto, poderíamos
trabalhar somente com sistema binário. Porém, como veremos adiante, poderemos
combinar dois ou mais bits ou símbolos binários para representar símbolos de outra base.
As alternativas são:

a- representar todas as quantidades em sistema binário, utilizando somente os símbolos


0 e 1, em que cada bit representa um dígito ou símbolo; e
b- agrupar estes bits, de maneira a representar um dígito mediante um conjunto de bits.

Se utilizarmos a alternativa (b) poderemos agrupar os bits em conjuntos de 4, de tal modo


que, para cada grupo, tenhamos dezesseis possibilidades de representação e poderemos,
então, utilizar o sistema hexadecimal.

SISTEMA BINÁRIO

A maneira mais óbvia de representar quantidades por meio de ibs é o sistema numérico,
conhecido com sistema binário, ou sistema numérico de base 2. Neste sistema, cada número
se representa de uma forma única, mediante uma combinação de símbolos 0 e 1, que, em
nosso caso, será uma combinação 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 número da casa que está ocupando. Cada casa vale duas vezes
aquela que está imediatamente a sua direita. 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:

… 26 25 24 23 22 21 20 2-1 2-2 …

3
Se b0, b1, b2, etc., são os bits que se coloca em cada posição, a quantidade representada
valerá:

…… b424 + b323 + b222 + b121 + b020 + b-12-1 + …….

Para evitar a representação mediante o somatório, adota-se a convenção de separar


mediante vírgulas as casas 20 e 2-1, de tal modo que a representação fique:

…… b4 b3 b2 b1 b0 b-1 …….

Em que bI = 0 ou 1.

Exemplo: o número binário 10011,01 representa a quantidade:

…… 1 x 24 + 0 x 23 + 0 x 22 + 1 x 21 + 1 x 20 + 0 x 2-1 + 1 x 2-2 …….

SISTEMA OCTAL

No sistema octal ou sistema de base 8, cada casa vale 8 vezes a que está a sua direita, e os
símbolos utilizados são: 0, 1, 2, 3, 4, 5, 6 e 7.
Exemplo o número octal 4701 representa a quantidade: 2497.

Designaremos por Bi cada número deste conjunto ordenado, no qual o sub-índice i


corresponde ao número da casa que está ocupando. Cada casa vale oito vezes aquela que
está imediatamente a sua direita. Desta forma, teremos que, se o valor da primeira casa da
direita for 80, a segunda valerá 80 x 8 = 81, e assim consecutivamente para a esquerda. Os
valores das casas ficam claros no seguinte esquema:

… 86 85 84 83 82 81 80 8-1 8-2 …

Se b0, b1, b2, etc., são os números que se coloca em cada posição, a quantidade representada
valerá:

…… b484 + b383 + b282 + b181 + b080 + b-18-1 + …….

Para evitar a representação mediante o somatório, adota-se a convenção de separar


mediante vírgulas as casas 80 e 8-1, de tal modo que a representação fique:

…… b4 b3 b2 b1 b0 b-1 …….

4
Em que bI = 0,1,2,3,4,5,6, ou 7.

Exemplo: o número octal (4701)8 representa a quantidade: (2497)10

…… 0 x 84 + 4 x 83 + 7 x 82 + 0 x 81 + 1 x 80 + 0 x 8-1 + 0 x 8-2 …….

SISTEMA HEXADECIMAL

No sistema hexadecimal ou sistema de base 16, cada casa vale dezesseis vezes a que está a
sua direita, e os símbolos utilizados são: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F, onde A
equivale a dez, B equivale a onze e assim consecutivamente até F que equivale a quinze, no
sistema decimal.
Exemplo o número hexadecimal A17,B9 representa a quantidade:

A x (16)210 + 1 x (16)110 + 7 x (16)010 + B x (16)-110 + 9 x (16)-210

A representação do conjunto dos símbolos deste sistema pode realizar-se mediante grupos
de quatro bits, em que cada símbolo se faz corresponder com sua representação binária:

(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

Desta forma, o nosso número A17,B9 ficaria em binário:

101000010111,10111001

É possível considerar, do conjunto de símbolos hexadecimais representados em binário,


aqueles que correspondem a um sistema decimal codificado em binário. Em tal caso, a
expressão binária dos dígitos A, B, C, D, E, F não teria significado.

5
TRANSFORMAÇÕES NUMÉRICAS

BINÁRIO EM DECIMAL

Já foi visto quando da explicação do sistema binário.

Exemplo: 11001

1 x 24 + 1 x 23 + 0 x 22 + 0 x 21 + 1 x 20 = 16 + 8 + 0 + 0 + 1 = 25

DECIMAL EM BINÁRIO

Existem duas maneiras de efetuarmos as conversões de números binários para números


decimais.
a) Por subtração da potência de 2 imediatamente inferior ao decimal.

Exemplo: 197 197 – 128 = 69 27


69 – 64 = 5 26
5– 4 = 1 22
1– 1 = 0 20

o binário será: 1 1 0 0 0 1 0 1
27 26 25 24 23 22 21 20

(197)10 = (11000101)2

b) Mediante divisões sucessivas por dois, tomando-se os restos das divisões no sentido
ascendente.

Exemplo1:197

197 2
1 98 2
0 49 2
1 24 2
0 12 2
0 6 2
0 3 2
1 1 2
1 0

6
Exemplo 2: 943

943 2
1 471 2
1 235 2
1 117 2
1 58 2
0 29 2
1 14 2
0 7 2
1 3 2
1 1 2
1 0

(943)10 = (1110101111)2

BINÁRIO EM OCTAL

Divide-se o número em grupos de três bits, a partir da direita, substituindo-se tais grupos
pelos símbolos octais correspondentes. Quando o número for fracionário, deve-se começar
a divisão em grupos de três, a partir da vírgula, em ambas as direções.

Exemplo: 101001111 101 001 111


(101001111)2 ( 5 1 7)8 = 5178

100100111 100 100 111


(100100111)2 ( 4 4 7)8 = 4478

Se a divisão em grupos de três deixar os grupos extremos com menos de três dígitos,
completá-los com zeros.

1010011 1 010 011 001 010 011

( 1 2 3)8
(1010011)2

(1010011)2 = (123)8

7
OCTAL EM BINÁRIO

Usa-se o processo inverso ao anterior.

Exemplo: (327)8

3 2 7

011 010 111

(327)8 = (011010111)2

DECIMAL EM OCTAL

Para efetuarmos as conversões de números decimais em números octais realizaremos esta


operação mediante divisões sucessivas por oito, tomando-se os restos das divisões no
sentido ascendente.

Exemplo1: (3964)10

3964 8
4 495 8
7 61 8
5 7

(3964)10 = (7574)8

Exemplo 2: (943)10

943 8
7 117 8
5 14 8
6 1

(943)10 = (1657)8

8
OCTAL EM DECIMAL

Já foi visto quando da explicação do sistema octal.

Exemplo: 1657

1 x 83 + 6 x 82 + 5 x 81 + 7 x 80 = 512 + 384 + 4 0 + 7 = 943

BINÁRIO EM HEXADECIMAL

Divide-se o número em grupos de quatro bits, a partir da direita, substituindo-se tais grupos
pelos símbolos hexadecimais correspondentes. Quando o número for fracionário, deve-se
começar a divisão em grupos de quatro, a partir da vírgula, em ambas as direções.

Exemplo: 11110001 1111 0001


(11110001)2 (F 1)16 = F116

10010011 1001 0011


(10010011)2 (9 3)16 = 9316

Se a divisão em grupos de quatro deixar os grupos extremos com menos de quatro dígitos,
completá-los com zeros.

101011 10 1011 0010 1011

(2 B)16
(101011)2

(101011)2 = (2B)16

HEXADECIMAL EM BINÁRIO

Usa-se o processo inverso ao anterior.

Exemplo: A56B

A 5 6 B

1010 0101 0110 1011

(A56B)16 = (1010010101101011)2

9
HEXADECIMAL EM DECIMAL

Usa-se o mesmo sistema para transformar binário em decimal, com a diferença entre base 2
para base 16.

Exemplo: A6B

A 6 B

10 x 16 2 + 6 x 16 1 + 11 x 16 0 =

2560 + 96 + 11 = (2667)10

(A6B)16 = (2667)10

DECIMAL EM HEXADECIMAL

Semelhante às transformações de decimal para binário, com divisões sucessivas pelo


número 16.

Exemplo 1: 2736

2736 16
0 171 16
11 10 16
10 0

mas, (10)10 = (A)16

(11)10 = (B)16

então:

(2736)10 = (AB0)16

10
Exemplo 2: 318

318 16
14 19 16
3 1 16
1 0

logo,

(318)10 = (13E)16

OCTAL EM HEXADECIMAL

Converte-se primeiro o número octal para binário através do sistema onde divide-se o
número em grupos de três bits, a partir da direita, substituindo-se tais grupos pelos
símbolos octais correspondentes. Quando o número for fracionário, deve-se começar a
divisão em grupos de três, a partir da vírgula, em ambas as direções. Após este primeiro
procedimento agrupa-se o número binário em grupos de quatro dígitos da direita para a
esquerda e realiza-se a conversão de binário para hexadecimal conforme sistema já
mencionado.

Exemplo: 173

( 1 7 3)8 = 1738
(1111011)2 001 111 011

(1111011)2
0111 1011
(01111011)2 ( 7 B)16 = 7B16

( 4 4 7)8 = 4478
(100100111)2 100 100 111

(100100111)2
0001 0010 0111
(000100100111)2 1 2 7= 12716

11
HEXADECIMAL EM OCTAL

Usa-se o processo inverso ao anterior.

Exemplo: (327)16

3 2 7

0011 0010 0111

(327)16 = (001100100111)2

001 100 100 111


1 4 4 7
(1447)8

(327)16 (1447)8

OPERAÇÕES NUMÉRICAS

ADIÇÃO

ADIÇÃO BINÁRIA

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 binário, ocorre o mesmo quando se soma 1 com 1.
O resultado é 0 e vai 1, ou seja 10. As regras para a adição binária são as seguintes:

0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 0 e vai 1 ( este resultado é escrito 10, mas diz-se “ um
zero”.

Exemplos:

a) 1010 + 111 =

binário decimal

12
1010 10
+ 0111 + 7

10001 17

b) 1010 + 101 =

binário decimal

1010 10
+ 0101 + 5

1111 15

ADIÇÃO HEXADECIMAL

Segue as mesmas regras usadas na adição binária e decimal. É preciso não confundir a
soma hexadecimal (16 símbolos) – com a decimal (10 símbolos). No sistema decimal 9
mais 2 é igual a 11, mas no sistema hexadecimal é B.
Uma regra que deve ser seguida é a seguinte: ao serem somados dois números
hexadecimais, se o resultado for maior que 15, subtrai-se 16 deste valor, coloca-se o resto
como resultado e com ocorrência de tantos “vai um” quantos forem os múltiplos de 16 que
entraram na subtração.

Exemplos:

4B2C + 1234 =

4B2C
+ 1234

5D60 ou seja,

C + 4 = 12 + 16 = 16 – 16 = 0 e “ vai um”

1+2+3=6

B+2=D

4+1=5

13
SUBTRAÇÃO

SUBTRAÇÃO BINÁRIA

Pode ser feita por soma de complemento desprezando-se o estouro.


No sistema decimal, para se achar o complemento de um número procede-se da seguinte
forma:

Complemento de 733

1000 - 733 = 267

Assim, o número 267 é o complemento de 733.

Por exemplo:
934 – 173 = 761

ou fazendo-se pelo complemento do número 173

1000 - 173 = 827 e somando-se

934 + 827 = 1761


desprezando-se o estouro, teremos o resultado de 761.

Uma regra prática para se achar o complemento de um número binário é inverter o valor
dos dígitos, ou seja, trocar todos os dígitos 1 por 0, e todos os dígitos 0 por 1, e, ao final,
somar 1 ao número obtido anteriormente.

Exemplo1: Achar o complemento de 1010

Invertê-lo 0101
Somar 1 + 1

0110

Exemplo2: Achar o complemento de 11011

Invertê-lo 00100
Somar 1 + 1

00101

Exemplo3: Subtrair 1101 - 0100 =

Inverte-se o segundo 1011


Soma-se 1 + 1

14
1100

soma-se o primeiro 1101


com o segundo invertido + 1100

11001

Despreza-se o estouro e obtêm-se o resultado 1001


OBS: Sempre que o tamanho do subtraendo for menor que o minuendo, acrescenta-se zeros
à esquerda do número (subtraendo), antes de invertê-lo.

SUBTRAÇÃO HEXADECIMAL

Na subtração hexadecimal, procedemos da mesma forma como fazemos na subtração


decimal, considerando-se, é claro, que o sistema hexadecimal tem 16 símbolos. Sempre que
não pudermos subtrair um número de outro, ou seja, quando o minuendo é menor que o
subtraendo, emprestamos 1 do número vizinho à esquerda.
Este 1 emprestado tem valor de 16, assim como em decimal este 1 emprestado teria valor
de 10. Somando ao minuendo e subtraído ao subtraendo, obtemos o resultado.

Exemplo:

8A8 - 1FA=

8A8
- 1FA

6AE

Como o número 8 é menor que A, emprestamos 1 do vizinho que passa a valer 9. Este 1
emprestado passa a valer 16 que somado a 8 dá 24.
Subtrai-se o subtraendo A = 10 de 24, obtendo-se 14, ou seja, E. Como 9 é menor que F,
emprestamos 1 do vizinho, que passa a valer 7. Soma-se 16 ao 9, dando 25, menos F
obtém-se A.
E, finalmente, 7 menos 1 = 6.

REPRESENTAÇÃO DE NÚMEROS INTEIROS

Os computadores digitais utilizam principalmente quatro métodos para representar números


inteiros:
- módulo de sinal (MS);
- complemento de 1 (C-1);

15
- complemento de 2 (C-2);
- excesso de 2 elevado a N-1.

Nessas representações de números utiliza-se o sistema binário e considera-se que temos um


número limitado de dígitos para cada dado numérico. Esse número de dígitos disponível é
representado por N.

MÓDULO DE SINAL (MS)

Neste sistema de representação 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 módulo do número.

Exemplo: representar 10 e –10


Limitação de 8 bits (N=8)

10 0 0001010 -10 1 0001010

nº sinal módulo nº sinal módulo

Denomina-se AMPLITUDE ou FAIXA de representação num determinado método o


conjunto de números que podem ser nele representados.
Para o sistema módulo e sinal, a faixa de representação para N dígitos é de:

- 2 N-1 + 1 <= X <= + 2 N-1 - 1

Para oito bits a faixa é: - 127 <= X <= +127

Para dezesseis bits a faixa é: - 32767 <= X <= + 32767

Para dezesseis bits a faixa é: - 2147483647 <= X <= + 2147483647

Vantagem: possuir faixa simétrica.


Inconveniência: 2 representações para o número 0.
Para 8 bits o 0 tem as seguintes representações:
00000000 (+0)
10000000 (-0)

COMPLEMENTO DE 1 (C – 1)

16
Este sistema de representação também utiliza o bit mais à esquerda para o sinal,
correspondendo o 0 ao sinal + e o 1 ao sinal -. Para os números positivos, os N- 1 bits da
direita representam o módulo. O simétrico de um número positivo é obtido pelo
complemento de todos os seus dígitos (trocando 0 por 1 e vice-versa) incluindo o bit de
sinal.

Exemplo: representar 10 e –10


Limitação de 8 bits (N=8)

10 0 0001010

nº sinal módulo

Número – 10 é o complemento do seu simétrico

-10 1 1110101

nº sinal módulo

Neste caso a faixa de representação é

- 2 N-1 + 1 <= X <= + 2 N-1 - 1

Para oito bits a faixa é: - 127 <= X <= +127

Para dezesseis bits a faixa é: - 32767 <= X <= + 32767

Para dezesseis bits a faixa é: - 2147483647 <= X <= + 2147483647

Vantagem: possuir faixa simétrica.


Inconveniência: 2 representações para o número 0.
Para 8 bits o 0 tem as seguintes representações:
00000000 (+0)
11111111 (-0)

COMPLEMENTO DE 2 ( C – 2)

Este sistema de representação utiliza o bit mais à esquerda para o sinal, correspondendo o 0
ao sinal + e o 1 ao sinal -. Para os números positivos, os N- 1 bits da direita representam o
módulo, igualmente ao MS e C - 1.
O simétrico de um número é obtido em dois passos:
1º passo – obtém-se o complemento de todos os bits do número positivo (trocando 0 por 1 e
vice-versa) incluindo o bit de sinal, isto é, executa-se o complemento de 1;

17
2º passo – ao resultado obtido no primeiro passo, soma-se 1 (em binário), desprezando o
último transporte, se houver.

Exemplo: complemento de 2 dos números 10 e –10


Limitação de 8 bits (N=8)

10 0 0001010

nº sinal módulo

Número – 10

1º passo: complemento de 1
-10 1 1110101

nº sinal módulo

2º passo:
1110101
+ 1

1110110

Neste caso a faixa de representação é

- 2 N-1 <= X <= + 2 N-1 - 1

Para oito bits a faixa é: - 128 <= X <= +127

Para dezesseis bits a faixa é: - 32768 <= X <= + 32767

Para dezesseis bits a faixa é: - 2147483648 <= X <= + 2147483647

Vantagem: uma única representação para o número 0..


Para 8 bits teremos:
Nº 0 00000000 (+0)
Nº -0 passo 1 11111111 (-0)
Passo 2 1
100000000

estouro desprezado

Logo 0 e –0 tem a mesma representação.

18
EXCESSO DE 2 ELEVADO A N - 1

O método de representação em excesso não utiliza nenhum bit para o sinal , de modo que
todos os bits representam um módulo ou valor. Esse valor corresponde ao número
representado mais um excesso, que para N bits é igual a 2 elevado a N – 1.

Exemplo: para 8 bits o excesso é 128 ( 27 = 128), logo


o número 10 é representado por 10 + 128 = 138; e
o número –10 é representado por – 10 + 128 = 118.

O número 10 é 10001010

O número – 10 é 01110110

Neste método o número 0 tem uma única representação, que para 8 bits corresponde a:
número 0 (0 + 128) = 10000000

Neste caso a faixa de representação é assimétrica (o que é inconveniente) e é dada por:

- 2 N-1 <= X <= + 2 N-1 - 1

Para oito bits a faixa é: - 128 <= X <= +127

Para dezesseis bits a faixa é: - 32768 <= X <= + 32767

Para dezesseis bits a faixa é: - 2147483648 <= X <= + 2147483647

É interessante observar que todo o número representado em excesso é igual a sua


correspondente representação em complemento de 2, mas com o 1º dígito da esquerda
trocado.

SOMA EM COMPLEMENTO

SOMA EM COMPLEMENTO DE 1 ( C – 1)

Na aritmética de complemento de 1, dois números são somados da mesma forma que na


representação binária. Com a diferença que, na ocorrência de transporte (carry) na soma
parcial dos bits mais à esquerda, este transporte será somado ao resultado.

Exemplo: somar os valores 10 e – 3 em complemento de 1, para 8 bits


10 em complemento de 1 é 00001010 (10)

19
- 3 em complemento de 1 é 11111100 (-3)

00001010
+ 11111100
________
(1) 00000110
somando 1 00000110

carry

Observe que houve carry. Este carry deve ser somado ao resultado obtido. Vejamos:

00000110
+ 1

00000111 (7) que é o resultado da operação.

SOMA EM COMPLEMENTO DE 2 ( C – 2)

Na aritmética em complemento de 2, o processo é idêntico ao de complemento de 1, mas,


desprezando-se o carry, se houver.

Exemplo: somar os valores 10 e – 3 em complemento de 2, para 8 bits

10 em complemento de 2 é 00001010 (10)


- 3 em complemento de 2 é 11111101 (-3)

somando 1 00000111 (7)

carry

Observe que houve carry. Este carry deve ser desprezado.

20
LISTA DE EXERCÍCIOS:

EXECUTE AS SEGUINTES TRANSFORMAÇÕES DE BASE:

1. BINÁRIO EM DECIMAL

a. (1010111)2 ( )10 f. (1000110001)2 ( )10


b. (11111111)2 ( )10 g. (111000111)2 ( )10
c. (1011011011)2 ( )10 h. (1100110011)2 ( )10
d. (0100001)2 ( )10 i. (00100100)2 ( )10
e. (110011)2 ( )10 j. (10101010)2 ( )10

2. DECIMAL EM BINÁRIO

a. (193)10 ( )2 f. (900)10 ( )2
b. (3057)10 ( )2 g. (815)10 ( )2
c. (285)10 ( )2 h. (2929)10 ( )2
d. (630)10 ( )2 i. (1500)10 ( )2
e. (986)10 ( )2 j. (152)10 ( )2

3. BINÁRIO EM OCTAL

a. (11000001)2 ( )8 f. (1110000100)2 ( )8
b. (101111110001)2 ( )8 g. (1100101111)2 ( )8
c. (100011101)2 ( )8 h. (101101110001)2 ( )8
d. (1011110110)2 ( )8 i. (10111011100)2 ( )8
e. (1111011010)2 ( )8 j. (10011000)2 ( )8

4. OCTAL EM BINÁRIO

a. (1024)8 ( )2 f. (032)8 ( )2
b. (102)8 ( )2 g. (756)8 ( )2
c. (214)8 ( )2 h. (903)8 ( )2
d. (523)8 ( )2 i. (512)8 ( )2
e. (7700)8 ( )2 j. (707)8 ( )2

5. DECIMAL EM OCTAL

a. (193)10 ( )8 f. (900)10 ( )8
b. (3057)10 ( )8 g. (815)10 ( )8
c. (285)10 ( )8 h. (2929)10 ( )8
d. (630)10 ( )8 i. (1500)10 ( )8
e. (986)10 ( )8 j. (152)10 ( )8

21
6. OCTAL EM DECIMAL

a. (1024)8 ( )10 f. (032)8 ( )10


b. (102)8 ( )10 g. (756)8 ( )10
c. (214)8 ( )10 h. (903)8 ( )10
d. (523)8 ( )10 i. (512)8 ( )10
e. (7700)8 ( )10 j. (707)8 ( )10

7. BINÁRIO EM HEXADECIMAL

a. (1010111)2 ( )16 f. (1000110001)2 ( )16


b. (11111111)2 ( )16 g. (111000111)2 ( )16
c. (1011011011)2 ( )16 h. (1100110011)2 ( )16
d. (0100001)2 ( )16 i. (00100100)2 ( )16
e. (110011)2 ( )16 j. (10101010)2 ( )16

8. HEXADECIMAL EM BINÁRIO

a. (AB9)16 ( )2 f. (FF0FF)16 ( )2
b. (1F3)16 ( )2 g. (ABC56)16 ( )2
c. (15A)16 ( )2 h. (90)16 ( )2
d. (523)16 ( )2 i. (5D1E2)16 ( )2
e. (401)16 ( )2 j. (27E7)16 ( )2

9. HEXADECIMAL EM DECIMAL

a. (AB9)16 ( )10 f. (FF0FF)16 ( )10


b. (1F3)16 ( )10 g. (ABC56)16 ( )10
c. (15A)16 ( )10 h. (90)16 ( )10
d. (523)16 ( )10 i. (5D1E2)16 ( )10
e. (401)16 ( )10 j. (27E7)16 ( )10

10. DECIMAL EM HEXADECIMAL

a. (193)10 ( )16 f. (900)10 ( )16


b. (3057)10 ( )16 g. (815)10 ( )86
c. (285)10 ( )16 h. (2929)10 ( )16
d. (630)10 ( )16 i. (1500)10 ( )16
e. (986)10 ( )16 j. (152)10 ( )16

11. OCTAL EM HEXADECIMAL

a. (1024)8 ( )16 f. (032)8 ( )16


b. (102)8 ( )16 g. (756)8 ( )16
c. (214)8 ( )16 h. (903)8 ( )16
d. (523)8 ( )16 i. (512)8 ( )16
e. (7700)8 ( )16 j. (707)8 ( )16

22
12. HEXADECIMAL EM OCTAL

a. (AB9)16 ( )8 f. (FF0FF)16 ( )8
b. (1F3)16 ( )8 g. (ABC56)16 ( )8
c. (15A)16 ( )8 h. (90)16 ( )8
d. (523)16 ( )8 i. (5D1E2)16 ( )8
e. (401)16 ( )8 j. (27E7)16 ( )8

EXECUTE AS SEGUINTES OPERAÇÕES ARITMÉTICAS

1. ADIÇÃO BINÁRIA

a. 1010100 + 10101 = f. 11010 + 111001 =


b. 10011101 + 1001 = g. 10101010 + 100100100 =
c. 101 + 1100111 = h. 1100110011 + 10101010 =
d. 111 + 1111 = i. 101010000 + 1010110 =
e. 10001 + 1101 = j. 111000111 + 1001111100 =

2. ADIÇÃO HEXADECIMAL

a. FFAA + EDE = f. 509 + 9FF32 =


b. 103 + FAFF = g. 9087 + ABC234 =
c. 9999 + 6666 = h. ABD + 1245 =
d. ABCDE + 3456 = i. 1A2B3C + 9684564 =
e. 98989 + 76896 = j. 59 + 99 =

3. SUBTRAÇÃO BINÁRIA

a. 1000000 – 111 = f. 1111 – 111 =


b. 1011 – 1010 = g. 10001 – 1101 =
c. 101111 – 101 = h. 1100110011 – 10101010 =
d. 11001 – 1101 = i. 101010000 – 1010110 =
e. 1011000 – 1011 = j. 111 – 111 =

4. SUBTRAÇÃO HEXADECIMAL

a. FE123 – ABCD = f. 9834 – 2349 =


b. AFBCD – A123F = g. A123B – 456 =
c. 5985 – ABC = h. 122345 – 87FF =
d. FEFE – AAAF = i. 72992 – AB45 =
e. 1045 – A99 = j. FFAAFF – AFDE =

23
REPRESENTE PARA 8 BITS, EM MS, COMPLEMENTO DE 1 E
COMPLEMENTO DE 2 OS SEGUINTES DECIMAIS:

MS (C – 1) (C – 2)
a. 33 e –33 _______________________________________________________
b. 25 e –25 _______________________________________________________
c. 100 e –100 _______________________________________________________
d. 127 e –127 _______________________________________________________
e. 1 e –1 _______________________________________________________
f. 18 e –18 _______________________________________________________
g. 78 e –78 _______________________________________________________
h. 29 e –29 _______________________________________________________
i. 512 e –512 _______________________________________________________
j. 81 e –81 _______________________________________________________

SOME EM (C – 1) E (C – 2), OS SEGUINTES DECIMAIS, REPRESENTADO-OS


EM 8 BITS:

(C – 1) (C – 2)
a. 17 + 33 = __________________________________________________
b. 127 + (-27) = __________________________________________________
c. 15 + (-103) = __________________________________________________
d. 70 + 70 = __________________________________________________
e. –13 + 96 = __________________________________________________
f. 34 + (-20) = __________________________________________________
g. 25 + 15 = __________________________________________________
h. –29 + 19 = __________________________________________________
i. 55 + 66 = __________________________________________________
j. 127 + (-128) = __________________________________________________

24

Você também pode gostar