Converta os números para as bases na ordem determinada e indique onde poderá haver perda de dígitos significativos:
(Para os binários, considere um número máximo de 16 bits representáveis)
(Para os binários, considere um número máximo de 16 bits representáveis)
Passo 1
Beleza, o enunciado pede para a gente pegar o número decimal 41.2, transformar em binário (com até 16 bits no total, contando parte inteira e fracionária) e depois passar esse mesmo valor pra hexadecimal.
Conteúdo envolvido:
Conteúdo envolvido:
- Conversão de parte inteira de decimal para binário (divisões sucessivas por 2).
- Conversão de parte fracionária de decimal para binário (multiplicações sucessivas por 2).
- Noções de repetição periódica em frações binárias.
- Agrupamento de bits (4 em 4) pra converter para hexadecimal.
O que vamos precisar: método de divisões pra inteiro, método de multiplicações pra fração e saber truncar pra caber em 16 bits.
Passo 2
Converter a parte inteira 41 para binário.
- Dividimos 41 por 2, anotamos quociente e resto:
41 ÷ 2 = 20 resto 1
20 ÷ 2 = 10 resto 0
10 ÷ 2 = 5 resto 0
5 ÷ 2 = 2 resto 1
2 ÷ 2 = 1 resto 0
1 ÷ 2 = 0 resto 1 - Lemos os restos de baixo pra cima: 41₁₀ = 101001₂.
Passo 3
Converter a parte fracionária 0.2 para binário.
Usamos multiplicação por 2, anotando a parte inteira de cada produto:
0.2·2 = 0.4 → bit 0
0.4·2 = 0.8 → bit 0
0.8·2 = 1.6 → bit 1 (e sobra 0.6)
0.6·2 = 1.2 → bit 1 (sobra 0.2)
0.2·2 = 0.4 → bit 0
…e aí ele entra num ciclo: 0.4→0.8→1.6→1.2→0.2
Logo a parte fracionária em binário é periódica:
0.2₁₀ = 0.0011 0011 0011 …₂ = 0.\overline{0011}₂
Usamos multiplicação por 2, anotando a parte inteira de cada produto:
0.2·2 = 0.4 → bit 0
0.4·2 = 0.8 → bit 0
0.8·2 = 1.6 → bit 1 (e sobra 0.6)
0.6·2 = 1.2 → bit 1 (sobra 0.2)
0.2·2 = 0.4 → bit 0
…e aí ele entra num ciclo: 0.4→0.8→1.6→1.2→0.2
Logo a parte fracionária em binário é periódica:
0.2₁₀ = 0.0011 0011 0011 …₂ = 0.\overline{0011}₂
Passo 4
Juntando parte inteira e fracionária temos infinitamente:
(41.2)₁₀ = 101001.0011 0011 0011 …₂
(41.2)₁₀ = 101001.0011 0011 0011 …₂
Mas queremos no máximo 16 bits totais (sem contar o ponto). Como a parte inteira usou 6 bits (101001), sobra 10 bits pra fração:
pego os primeiros 10 bits de “0011 0011 0011…” → 0011001100
fica:
pego os primeiros 10 bits de “0011 0011 0011…” → 0011001100
fica:
Aqui rolou truncamento da repetição “0011…” depois dos 10 bits, então perdeu dígitos significativos.
Passo 5
Converter esse binário pra hexadecimal.
– Parte inteira 101001: agrupo em 4 bits da direita pra esquerda → 0010 1001 = 2 9
– Parte fracionária 0011 0011 00(00) – completei com dois zeros pra formar grupos de 4 → 0011 0011 0000 = 3 3 0
Então, em hexadecimais:
– Parte inteira 101001: agrupo em 4 bits da direita pra esquerda → 0010 1001 = 2 9
– Parte fracionária 0011 0011 00(00) – completei com dois zeros pra formar grupos de 4 → 0011 0011 0000 = 3 3 0
Então, em hexadecimais:
Se você quiser o valor exato sem truncar a repetição, a parte fracionária em hex fica 0.\overline{3}, ou seja 29.\overline{3}_{16}.
Resposta
(41.2)₁₀ = (101001.0011001100)₂ (com truncamento em 16 bits, perde dígitos)
(41.2)₁₀ ≈ (29.330)₁₆ (ou exato 29.\overline{3}₁₆)
(41.2)₁₀ ≈ (29.330)₁₆ (ou exato 29.\overline{3}₁₆)