Literais hexadecimais

1 resposta
giselezr

Bom dia

Pessoal, não consegui entender esse topico do livro da kathy sierra : literais hexadecimais.

pq isso:

int y = 0x7fffffff;

vira isso:

[telefone removido]

se vai até 15 desta forma:

0 1 2 3 4 5 6 7 8 9 a b c d e f

já procurei na intenet, mas mesmo assim não consegui entender…
alguem me explica por favor

obrigada

1 Resposta

bombbr

giselezr:
Bom dia
Pessoal, não consegui entender esse topico do livro da kathy sierra : literais hexadecimais.
pq isso:
int y = 0x7fffffff;
vira isso:
[telefone removido]
se vai até 15 desta forma:
0 1 2 3 4 5 6 7 8 9 a b c d e f
já procurei na intenet, mas mesmo assim não consegui entender…
alguem me explica por favor
obrigada

A literal que se inicia com o prefixo 0x significa que este valor está na base 16, ou seja, no sistema de numeração haxadecimal.

int y = 0x7fffffff;

Abaixo os calculos para conversão da base 16 (hexadecimal) para base 10 (decimal).

7*16^7 + F*16^6 + F*16^5 + F*16^4 + F*16^3 + F*16^2 + F*16^1 + F*16^0
7*16^7 + 15*16^6 + 15*16^5 + 15*16^4 + 15*16^3 + 15*16^2 + 15*16^1 + 15*16^0
7*268435456 + 15*16777216 + 15*1048576 + 15*65536 + 15*4096 + 15*256 + 15*16 + 15*1
[telefone removido]

Veja o link abaixo detalhes do Sistema de numeração hexadecimal.

Criado 15 de setembro de 2012
Ultima resposta 15 de set. de 2012
Respostas 1
Participantes 2