You are on page 1of 11

Aqui esto apenas nmeros ratificados.

William Shakespeare

A natureza tem algum tipo de sistema de coordenadas geomtrico-aritmtico,


porque a natureza tem todos os tipos de modelos. O que experimentamos de natureza est em modelos e todos os modelos da natureza so belos.
Surpreende-me que o sistema da natureza tenha tal beleza, uma vez que em
qumica descobrimos que as associaes ocorrem sempre em belos nmeros inteiros no h nenhuma frao.
Richard Buckminster Fuller

Sistemas de numerao

Objetivos
Neste captulo, voc aprender:

A entender conceitos bsicos de sistemas de numerao como base, valor posicional e valor
de smbolo.

A entender como trabalhar com nmeros representados nos sistemas de numerao binrios,
octais e hexadecimais.

A abreviar nmeros binrios como nmeros octais ou nmeros hexadecimais.

A converter nmeros octais e nmeros hexadecimais em nmeros binrios.

A converter nos dois sentidos entre nmeros decimais e seus equivalentes binrios, octais e
hexadecimais.

A entender a aritmtica binria e como os nmeros binrios negativos so representados


utilizando a notao de complemento de dois.

II

Apndice H

Sistemas de numerao

H.1 Introduo

Sumrio

H.2 Abreviando nmeros binrios como nmeros octais e nmeros hexadecimais


H.3 Convertendo nmeros octais e hexadecimais em nmeros binrios
H.4 Convertendo de octal, binrio ou hexadecimal para decimal
H.5 Convertendo de decimal para octal, binrio ou hexadecimal
H.6 Nmeros binrio negativos: notao de complemento de dois
Resumo | Exerccios de autorreviso | Respostas dos exerccios de autorreviso | Exerccios

H.1 Introduo
Neste apndice, introduzimos os principais sistemas de numerao que os programadores de Java utilizam especialmente quando esto
trabalhando em projeto de software que requer ntima interao com hardware no nvel de mquina. Projetos como esse incluem sistemas
operacionais, software de rede de computador, compiladores, sistemas de banco de dados e aplicativos que requerem alto desempenho.
Quando escrevemos um inteiro como 227 ou 63 em um programa Java, o nmero assumido como estando no sistema de nmeros
decimais (base 10). Os dgitos no sistema de numerao decimal so 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. O dgito mais baixo 0 e o dgito mais alto
9 um a menos que a base 10. Internamente, os computadores utilizam o sistema de numerao binrio (base 2). O sistema de numerao
binrio tem apenas dois dgitos, 0 e 1. Seu dgito mais baixo 0 e seu dgito mais alto 1 um a menos que a base 2.
Como veremos, nmeros binrios tendem a ser muito mais longos que seus equivalentes decimais. Os programadores que trabalham
em linguagens assembly e em linguagens de alto nvel como Java, que permitem que os programadores alcancem o "nvel de mquina",
acham incmodo trabalhar com nmeros binrios. Ento dois outros sistemas de numerao, o sistema de numerao octal (base 8) e o sistema de numerao hexadecimal (base 16) so populares principalmente porque eles tornam conveniente abreviar nmeros binrios.
No sistema de numerao octal, os dgitos variam de 0 a 7. Uma vez que o sistema de numerao binrio e o sistema de numerao octal
tm menos dgitos que o sistema de numerao decimal, seus dgitos so os mesmos que os dgitos correspondentes em decimal.
O sistema de numerao hexadecimal impe um problema uma vez que ele requer dezesseis dgitos o dgito mais baixo o 0 e um
dgito mais alto um valor equivalente ao decimal 15 (um a menos que a base 16). Por conveno, utilizamos as letras A a F para representar os dgitos hexadecimais correspondentes aos valores decimais de 10 a 15. Portanto, em hexadecimal, podemos ter nmeros como 876
consistindo unicamente em dgitos do tipo decimal, nmeros como 8A55F consistindo em dgitos e letras, e nmeros como FFE consistindo
unicamente em letras. Ocasionalmente, um nmero hexadecimal forma uma palavra comum como FACE ou FOOD isso pode aparecer
estranho para programadores acostumados a trabalhar com nmeros. Os dgitos dos sistemas de numerao binrio, octal, decimal e hexadecimal esto resumidos na Figura H.1 e Figura H.2.
Cada um desses sistemas de numerao utiliza notao posicional cada posio na qual um dgito escrito tem um valor posicional
diferente. Por exemplo, no nmero decimal 937 (o 9, o 3 e o 7 so referenciados como valores de smbolo), dizemos que o 7 escrito na
posio das unidades, o 3 escrito na posio das dezenas e o 9 escrito na posio das centenas. Observe que cada uma dessas posies
uma potncia da base (base 10) e que essas potncias iniciam em 0 e aumentam por 1 medida que nos movemos para a esquerda do
nmero (Figura H.3)

H.1 Introduo

Dgito binrio

Dgito octal

Dgito decimal

Dgito hexadecimal

9
A

(valor decimal de 10)

(valor decimal de 11)

(valor decimal de 12)

(valor decimal de 13)

(valor decimal de 14)

(valor decimal de 15)

III

Figura H.1 | Os dgitos dos sistemas de numerao binrio, octal decimal e hexadecimal.

Atributo

Binrio

Octal

Decimal

Hexadecimal

Base

10

16

Dgito mais baixo

Dgito mais alto

Figura H.2 | Comparando os sistemas de numerao binrio, octais, decimais e hexadecimais.

Valores posicionais no sistema de numerao decimal

Dgito decimal

Nome da posio

centenas

dezenas

unidades

Valor posicional

100

10

Valor posicional como uma


potncia da base (10)

10

10

100

Figura H.3 | Valores posicionais no sistema de numerao decimal.

Para nmeros decimais mais longos, as prximas posies esquerda seriam a posio dos milhares (10 terceira potncia), a posio
dezena de milhares (10 quarta potncia), a posio das centenas de milhares (10 quinta potncia), a posio dos milhes (10 sexta
potncia), a posio das dezenas de milhes (10 stima potncia) e assim por diante.
No nmero binrio 101, o 1 mais direita escrito na posio das unidades, o 0 escrito na posio dos 2s e o 1 mais esquerda
escrito na posio dos 4s. Observe que cada posio uma potncia da base (base 2) e que essas potncias iniciam em 0 e aumentam por 1
medida que nos movemos esquerda no nmero (Figura H.4). Portanto, 101 = 22 + 20 = 4 + 1 = 5.

IV

Apndice H Sistemas de numerao

Valores posicionais no sistema de numerao binrio

Dgito binrio

Nome da posio

4s

2s

unidades

Valor posicional

Valor posicional como uma


potncia da base (2)

22

21

20

Figura H.4 | Valores posicionais no sistema de numerao binrio.

Para nmeros binrios mais longos, as prximas posies esquerda seriam a posio dos 8s (2 elevado a 3), a posio dos 16s (2
elevado a 4), a posio dos 32s (2 elevado a 5), a posio dos 64s (2 elevado a 6) e assim por diante.
No nmero octal 425, dizemos que o 5 escrito na posio das unidades, o 2 escrito na posio dos 8s e o 4 escrito na posio dos
64s. Observe que cada uma dessas posies uma potncia da base (base 8) e que essas potncias iniciam em 0 e aumentam por 1 quando
movemos esquerda no nmero (FiguraH.5)

Valores posicionais no sistema de numerao octal

Dgito decimal

Nome da posio

64s

8s

unidades

Valor posicional

64

Valor posicional como uma


potncia da base (8)

82

82

80

Figura H.5 | Valores posicionais no sistema de numerao octal.

Para nmeros octais mais longos, as prximas posies esquerda seriam a posio dos 512s (8 elevado a 3), a posio dos 4096s (8
elevado a 4), a posio dos 32706s (8 elevado a 5) e assim por diante.
No nmero hexadecimal 3DA, dizemos que A escrito na posio das unidades, o D escrito na posio dos 16s e o 3 escrito na posio
dos 256s. Observe que cada uma dessas posies uma potncia da base (base 16) e que essas potncias iniciam em 0 e aumentam por 1
medida que nos movemos esquerda do nmero (FiguraH.6)
Para nmeros hexadecimais mais longos, as prximas posies esquerda seriam a posio dos 4096(s) (16 elevado a 3), a posio dos
64536s (16 elevado a 4) e assim por diante.

Valores posicionais no sistema de numerao hexadecimal

Dgito decimal

Nome da posio

256s

16s

unidades

Valor posicional

256

16

Valor posicional como uma


potncia da base (16)

162

162

160

Figura H.6 | Valores posicionais no sistema de numerao hexadecimal.

H.2 Abreviando nmeros binrios como nmeros octais e nmeros hexadecimais

H.2 Abreviando nmeros binrios como nmeros octais e nmeros hexadecimais


A principal utilizao para nmeros hexadecimal e octal em computao abreviar longas representaes binrias. A Figura H.7 destaca o fato de que nmeros binrios longos podem ser expressos concisamente em sistemas de numerao com bases mais altas que o sistema
de numerao binrio.
Nmero decimal

Representao binria

Representao octal

Representao hexadecimal

10

11

100

101

110

111

1000

10

1001

11

10

1010

12

11

1011

13

12

1100

14

13

1101

15

14

1110

16

15

1111

17

16

10000

20

10

Figura H.7 | Equivalentes decimais, binrios, octais e hexadecimais.

Um relacionamento particularmente importante que tanto o sistema de numerao octal como o sistema de numerao hexadecimal
tm com o sistema binrio que as bases octal e hexadecimal (8 e 16 respectivamente) so potncias da base do sistema de numerao binrio (base 2). Considere o seguinte nmero binrio de 12 algarismos e seus equivalentes octal e hexadecimal. Veja se voc pode determinar
como esse relacionamento torna conveniente a abreviao de nmero binrio em octal ou hexadecimal. A resposta segue os nmeros.
Nmero binrio

Equivalente octal

Equivalente hexadecimal

100011010001

4321

8D1

Para ver como o nmero binrio facilmente convertido em octal, simplesmente divida o nmero binrio de 12 dgitos em grupos de
trs bits consecutivos cada e escreva esses grupos sobre os dgitos correspondentes do nmero octal como segue
100
4

011
3

010
2

001
1

Observe que o dgito octal que voc escreveu sob cada grupo de bits corresponde precisamente ao equivalente octal desse nmero binrio
de 3 dgitos, como mostrado na Figura H.7.
O mesmo tipo de relacionamento pode ser observado ao converter de binrio para hexadecimal. Divida o nmero binrio de 12 algarismos em grupos de quatro bits consecutivos cada e escreve esses grupos sobre os dgitos correspondentes do nmero hexadecimal como a
seguir:
1000
8

1101
D

0001
1

Observe que o dgito hexadecimal que voc escreveu sob cada grupo de quatro bits corresponde precisamente ao equivalente de hexadecimal do nmero binrio de 4 algarismos como mostrado na Figura H.3.

VI

Apndice H

Sistemas de numerao

H.3 Convertendo nmeros octais e hexadecimais em nmeros binrios


Na seo anterior, vimos como converter nmeros binrios em seus equivalentes octal e hexadecimal formando grupos de dgitos binrios e simplesmente reescrevendo-os como seus valores equivalentes de dgito octal ou valores de dgito hexadecimal. Esse processo pode ser
utilizado no sentido inverso para produzir o equivalente binrio de um determinado nmero octal ou hexadecimal.
Por exemplo, o nmero octal 653 convertido em binrio simplesmente escrevendo o 6 como seu equivalente binrio de 3 dgitos 110,
o 5 como seu equivalente binrio de 3 dgitos 101 e o 3 como seu equivalente binrio de 3 dgitos 011 para formar o nmero binrio de 9
dgitos 110101011.
O nmero de hexadecimal FAD5 convertido em binrio simplesmente escrevendo o F como seu equivalente binrio de 4 dgitos 1111,
o A como seu equivalente binrio de 4 dgitos 1010, o D como seu equivalente binrio de 4 dgitos 1101 e o 5 como seus equivalentes binrios
de 4 dgitos 0101 para formar o nmero de 16 dgitos 1111101011010101.

H.4 Convertendo de octal, binrio ou hexadecimal para decimal


Estamos acostumados a trabalhar em decimal e, portanto, costuma ser conveniente converter um nmero octal, binrio ou hexadecimal em decimal para obter um sentido de quanto o nmero realmente vale. Os nossos diagramas na Seo H.1 expressam os valores posicionais em decimal. Para converter um nmero em decimal a partir de outra base, multiplique o equivalente decimal de cada dgito por seu
valor posicional e some esses produtos. Por exemplo, o nmero binrio 110101 convertido no decimal 53, como mostrado na Figura H.8.
Convertendo um nmero binrio em decimal

Valores
posicionais

32

16

Valores de
smbolo

Produtos

1*32=32

1*16=16

0*8=0

1*4=4

0*2=0

1*1=1

Soma

= 32 + 16 + 0 + 4 + 0s + 1 = 53

Figura H.8 | Convertendo um nmero binrio em decimal.

Para converter o octal 7614 no decimal 3980, utilizamos a mesma tcnica, dessa vez utilizando valores posicionais octais apropriados,
como mostrado na Figura H.9.
Convertendo um nmero octal em decimal

Valores posicionais

512

64

Valores de smbolo

Produtos

7*512=3584

6*64=384

1*8=8

4*1=4

Soma

= 3584 + 384 + 8 + 4 = 3980

Figura H.9 | Convertendo um nmero octal em decimal.

Para converter hexadecimal AD3B no decimal 44347, utilizamos a mesma tcnica, dessa vez utilizando valores posicionais hexadecimais apropriados, como mostrado na Figura H.10.
Convertendo um nmero hexadecimal em decimal

Valores posicionais

4096

256

16

Valores de smbolo

Produtos

A*4096=40960

D*256=3328

3*16=48

B*1=11

Soma

= 40960 + 3328 + 48 + 11 = 44347

Figura H.10 | Convertendo um nmero hexadecimal em decimal.

H.5 Convertendo de decimal para octal, binrio ou hexadecimal

VII

H.5 Convertendo de decimal para octal, binrio ou hexadecimal


As converses na Seo H.4 seguem-se naturalmente das convenes de notao posicional. A converso de decimal em octal, binrio
ou hexadecimal tambm segue essas convenes.
Suponha que quisssemos converter o decimal 57 em binrio. Iniciamos escrevendo os valores posicionais das colunas da direita para
a esquerda at alcanarmos uma coluna cujo valor posicional maior que o nmero decimal. No precisamos dessa coluna, ento a descartamos. Portanto, primeiro escrevemos:
Valores posicionais:

64

32

16

Ento descartamos a coluna com valor posicional 64, deixando:


Valores posicionais:

32

16

Em seguida trabalhamos da coluna mais esquerda para a direta. Dividimos 32 em 57 e observamos que h um 32 em 57 com um
resto de 25, ento escrevemos 1 na coluna 32. Dividimos 16 em 25 e observamos que h um 16 em 25 com um resto de 9 e escrevemos 1 na
coluna 16. Dividimos 8 em 9 e observamos que h um 8 em 9 com um resto de 1. Cada uma das duas prximas colunas produz quocientes
de 0quando seus valores posicionais so divididos em 1, portanto escrevemos 0s nas colunas 4 e 2. Por fim, 1 em 1 1, ento escrevemos 1
na coluna 1. Isso resulta em:
Valores posicionais:
Valores de smbolo:

32
1

16
1

8
1

4
0

2
0

1
1

E assim o decimal 57 equivalente ao binrio 111001.


Para converter decimal 103 em octal, iniciamos escrevendo os valores posicionais das colunas at que alcanamos uma coluna cujo
valor posicional maior que o nmero decimal. No precisamos dessa coluna, ento a descartamos. Portanto, primeiro escrevemos:
Valores posicionais:

512

64

Ento descartamos a coluna com valor posicional 512, o que resulta em:
Valores posicionais:

64

Em seguida trabalhamos da coluna mais esquerda para a direta. Dividimos 64 em 103 e observamos que h um 64 em 103 com um
resto de 39, ento escrevemos 1 na coluna 32. Dividimos 8 em 39 e observamos que h quatro 8s em 39 com um resto de 7 e escrevemos 4 na
coluna 8. Por fim, dividimos 1 em 7 e observamos que h sete 1s em 7 sem resto, portanto ento escrevemos 7 na coluna 1. Isso resulta em:
Valores posicionais:
Valores de smbolo:

64
1

8
4

1
7

E assim o decimal 103 equivalente ao octal 147.


Para converter o decimal 375 em hexadecimal, iniciamos escrevendo os valores posicionais das colunas at que alcanarmos uma
coluna cujo valor posicional maior que o nmero decimal. No precisamos dessa coluna, ento a descartamos. Portanto, primeiro escrevemos:
Valores posicionais:

4096

256

16

Ento descartamos a coluna com valor posicional 4096, o que resulta em:
Valores posicionais:

256

16

Em seguida trabalhamos da coluna mais esquerda para a direta. Dividimos 256 em 375 e observamos que h um 256 em 375 com um
resto de 119, ento escrevemos 1 na coluna 256. Dividimos 16 em 119 e observamos que h sete 16s em 119 com um resto de 7 e escrevemos
7 na coluna 16. Por fim, dividimos 1 em 7 e observamos que h sete 1s em 7 sem resto, portanto ento escrevemos 7 na coluna 1. Isso resulta
em:
Valores posicionais:
Valores de smbolo:

256
1

16
7

1
7

E assim o decimal 375 equivalente ao hexadecimal 177.

VIII

Apndice H

Sistemas de numerao

H.6 Nmeros binrios negativos: notao de complemento de dois


A discusso at agora neste apndice focalizou nmeros positivos. Nesta seo, explicamos como os computadores representam nmeros negativos utilizando notao de complemento de dois. Inicialmente explicamos como o complemento de dois de um nmero binrio
formado e, ento, mostramos por que ele representa o valor negativo do nmero binrio dado.
Considere uma mquina com inteiros de 32 bits. Suponha
int value = 13;

A representao de 32 bits de value


00000000 00000000 00000000 00001101

Para formar o negativo de value primeiro formamos seu complemento de um aplicando o operador de complemento de bit do Java
(~) :
onesComplementOfValue = ~value;

Internamente, ~value agora value com cada um de seus bits invertidos 1s tornam-se 0s e 0s tornam-se 1s como segue:
value:
00000000 00000000 00000000 00001101
~value (i.e., complemento de uns do valor):
11111111 11111111 11111111 11110010

Para formar complemento de dois de value simplesmente adicionamos 1 ao complemento de um de value. Assim
Complemento de dois de value:
11111111 11111111 11111111 11110011

Agora se isso for de fato igual a 13, devemos ser capazes de adicion-lo ao binrio 13 e obter um resultado 0. Vamos tentar isso:
00000000 00000000 00000000 00001101
+11111111 11111111 11111111 11110011
-----------------------------------00000000 00000000 00000000 00000000

O bit de transporte que vem da coluna mais esquerda descartado e, de fato, obtemos 0 como resultado. Se adicionssemos o complemento de um nmero ao nmero, o resultado seria todos os dgitos como 1. A chave para obter um resultado de todos os dgitos como zeros
que o complemento de dois seja 1 maior que o complemento de um. A adio de 1 faz com que cada coluna adicione 0 a um transportador
de 1. O transportador continua se movendo na esquerda at que seja descartado do bit mais esquerda e, da, o nmero resultante todos
os dgitos como zero.
Os computadores na realidade realizam uma subtrao, como
x = a - value;

adicionando o complemento de dois de value a a como segue:


x = a + (~value + 1);

Suponha que a seja 27 e value seja 13 como antes. Se o complemento de dois de value for realmente o negativo de value, ento
adicionar o complemento de dois de value a a deve produzir o resultado 14. Vamos tentar isso:
a (i.e., 27)
+(~value + 1)

que de fato igual a 14.

00000000 00000000 00000000 00011011


+11111111 11111111 11111111 11110011
-----------------------------------00000000 00000000 00000000 00001110

Resumo

IX

Resumo
Um inteiro como 19 ou 227 ou 63 em um programa Java assumido como estando no sistema de numerao decimal (base 10). Os dgitos no sistema
de numerao decimal so 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. O dgito mais baixo 0 e o dgito mais alto 9 um a menos que a base 10.
Internamente, computadores utilizam o sistema de numerao binrio (base 2). O sistema de numerao binrio tem apenas dois dgitos, 0 e 1. Seu
dgito mais baixo 0 e seu dgito mais alto 1 um a menos que a base 2.
O sistema de numerao octal (base 8) e o sistema de numerao hexadecimal (base 16) so populares principalmente porque tornam conveniente a
abreviao de nmeros binrios.
Os dgitos do sistema de numerao octal variam de 0 a 7.
O sistema de numerao hexadecimal impe um problema uma vez que ele requer dezesseis dgitos um dgito mais baixo que 0 e um dgito mais alto
com um valor equivalente ao decimal 15 (um a menos que a base 16). Por conveno, utilizamos as letras A a F para representar os dgitos hexadecimais
correspondentes aos valores decimais 10 a 15.
Cada sistema de numerao utiliza notao posicional cada posio em que um dgito escrito tem um valor posicional diferente.
Um relacionamento particularmente importante que tanto o sistema de numerao octal como o sistema de numerao hexadecimal tm com o sistema binrio que as bases octal e hexadecimal (8 e 16 respectivamente) so potncias da base do sistema de numerao binrio (base 2).
Para converter um nmero octal em um binrio, substitua cada dgito octal por seu equivalente binrio de trs dgitos.
Para converter um nmero hexadecimal em um nmero binrio, simplesmente substitua cada dgito hexadecimal por seu equivalente binrio de
quatro dgitos.
Uma vez que estamos acostumados a trabalhar com decimal, conveniente converter um nmero binrio, octal ou hexadecimal em decimal para obter
um sentido do valor real do nmero.
Para converter um nmero em decimal a partir de outra base, multiplique o equivalente decimal de cada dgito por seu valor posicional e some os
produtos.
Os computadores representam nmeros negativos utilizando a notao de complemento de dois.
Para formar o negativo de um valor em binrio, primeiro forme o complemento de um aplicando o operador de complemento de bitwise do Java (~).
Isso inverte os bits do valor. Para formar o complemento de dois de um valor, simplesmente adicione um ao complemento de um do valor.

Exerccios de autorreviso
H.1

As bases dos sistemas de numerao binrios, octais, decimais e hexadecimais so, respectivamente, _________, _________, _________ e
_________.

H.2

Em geral, as representaes decimal, octal e hexadecimal de um nmero binrio dado contm (mais/menos) dgitos que o nmero binrio.

H.3

(Verdadeiro/falso) Uma razo popular para utilizar o sistema de numerao decimal que ele forma uma notao conveniente para abreviar
nmero binrio simplesmente substituindo um dgito decimal por grupo de quatro bits binrios.

H.4

A representao (octal / hexadecimal / decimal) de um valor binrio grande a mais concisa (das alternativas dadas).

H.5

(Verdadeiro/Falso) O dgito mais alto em qualquer base um maior que a base.

H.6

(Verdadeiro/Falso) O dgito mais baixo em qualquer base um menor que a base.

H.7

O valor posicional do dgito mais direita de qualquer nmero em octal, binrio, hexadecimal ou decimal sempre ________.

H.8

O valor posicional do dgito esquerda do dgito mais direita de qualquer nmero em octal binrio, hexadecimal ou decimal sempre igual a
________.

H.9

Preencha os valores ausentes nesse grfico de valores posicionais para as quatro posies mais direita em cada um dos sistemas de nmero
indicados:
decimal
hexadecimal
binary
octal

1000
...
...
512

100
256
...
...

10
...
...

8

1
...
...
...

H.10 Converta o binrio 110101011000 em octal e em hexadecimal.


H.11 Converta o hexadecimal FACE em binrio.
H.12 Converta o octal 7316 em binrio.
H.13 Converta o hexadecimal 4FEC em octal. (Dica: Primeiro converta 4FEC em binrio ento converta esse nmero binrio em octal.)
H.14 Converta o binrio 1101110 em decimal.
H.15 Converta o octal 317 em decimal.
H.16 Converta o hexadecimal EFD4 em decimal.

Apndice H Sistemas de numerao

H.17 Converta o decimal 177 em binrio, em octal e em hexadecimal.


H.18 Mostre a representao binria do decimal 417. Ento, mostre o complemento de um de 417 e o complemento de dois de 417.
H.19 Qual o resultado quando um nmero e seu complemento de dois so somados?

Respostas dos exerccios de autorreviso


H.1
H.2
H.3
H.4
H.5
H.6
H.7
H.8
H.9

10, 2, 8, 16.
Menos.
Falso. O hexadecimal faz isso.
Hexadecimal.
Falso. O dgito mais alto em qualquer base um menor que a base.
Falso. O dgito mais baixo em qualquer base zero.
1 (a base elevada potncia zero).
A base do sistema de numerao.
Preencha os valores ausentes nesse grfico de valores posicionais para as quatro posies mais direita em cada um dos sistemas de nmero
indicados:
decimal 1000 100 10 1
hexadecimal 4096 256 16 1
binary

8
4
2
1
octal
512
64
8
1

H.10
H.11
H.12
H.13
H.14
H.15
H.16
H.17

6530 Octal; D58 Hexadecimal.


1111 1010 1100 1110 binrio.
111 011 001 110.
0 100 111 111 101 100; octal 47754.
2+4+8+32+64=110 decimal.
7+1*8+3*64=7+8+192=207.
4+13*16+15*256+14*4096=61396.
177
em binrio:

256 128 64 32 16 8 4 2 1
128 64 32 16 8 4 2 1
(1*128)+(0*64)+(1*32)+(1*16)+(0*8)+(0*4)+(0*2)+(1*1)
10110001

em octal:
512 64 8 1
64 8 1
(2*64)+(6*8)+(1*1)
261

em hexadecimal:
256 16 1
16 1
(11*16)+(1*1)
(B*16)+(1*1)
B1

H.18 Binrio:
512 256 128 64 32 16 8 4 2 1
256 128 64 32 16 8 4 2 1
(1*256)+(1*128)+(0*64)+(1*32)+(0*16)+(0*8)+(0*4)+(0*2)+(1*1)
110100001

Complemento de um: 001011110


Complemento de dois: 001011111
Verificao: Nmero binrio original + seu complemento de dois
110100001
001011111
--------000000000

H.19 Zero.

Exerccios

XI

Exerccios
H.20 Algumas pessoas argumentam que muitos de nossos clculos seriam mais fceis no sistema de nmeros de base 12 uma vez que 12 divisvel por
muito mais nmeros que 10 (para a base 10). Qual o dgito mais baixo na base 12? O que seria o smbolo mais alto para o dgito na base 12? Quais so
os valores posicionais das quatro posies mais direita de qualquer nmero no sistema de nmeros de base 12?
H.21 Complete o seguinte grfico de valores posicionais para as quatro posies mais direita em cada um dos sistemas de nmero indicados:
decimal
base 6
base 13
base 3

1000
...
...
27

100
...
169
...

10
6
...
...

1
...
...
...

H.22 Converta o binrio 100101111010 em octal e em hexadecimal.


H.23 Converta o hexadecimal 3A7D em binrio.
H.24 Converta o hexadecimal 765F em octal. (Dica: Primeiro converta 765F em binrio e, ento, converta esse nmero binrio em octal.)
H.25 Converta o binrio 1011110 em decimal.
H.26 Converta o octal 426 em decimal.
H.27 Converta o hexadecimal FFFF em decimal.
H.28 Converta o decimal 299 em binrio, em octal e em hexadecimal.
H.29 Mostre a representao binria do decimal 779. Ento, mostre o complemento de um de 779 e o complemento de dois de 779.
H.30 Mostre o complemento de dois do valor inteiro -1 em uma mquina com inteiros de 32 bits.

You might also like