Questão de Arquitetura de Computadores — Sistemas de numeração — CESPE / CEBRASPE 2022
Arquitetura de Computadores›Sistemas de numeração
Código
ce141593
Banca
CESPE / CEBRASPE
Órgão
POLITEC-RO
Ano
2022
Nível
Superior
Cargo
POLITEC - RO - Perito Criminal - Área 6 (Ciências da Computação/Informática/Análise de Sistemas)
Considere um sistema little endian em que determinada palavra de memória de 32 bits tem armazenada a sequência de dados 1A 0F 2B 00, em representação hexadecimal. Ao transferir esses dados diretamente para um sistema big endian, sem conversão, a sequência de dados armazenada no novo sistema, em representação hexadecimal, será
A2B 00 1A 0F.
B1A 0F 2B 00.
C00 2B 0F 1A.
D00 B2 F0 A1.
EA1 F0 B2 00.
Revelar gabarito e comentário▾
GabaritoC — 00 2B 0F 1A.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Endianess: little vs big
Gabarito: letra C. Em sistemas little endian, o byte menos significativo (LSB) é armazenado no menor endereço; em big endian, o byte mais significativo (MSB) ocupa o menor endereço. A palavra de 32 bits armazenada como 1A 0F 2B 00 em little endian representa o valor hexadecimal 0x002B0F1A. Ao transferir esse valor para um sistema big endian sem conversão (isto é, o mesmo valor numérico é reescrito conforme o novo formato), a sequência de bytes no destino deve ser 00 2B 0F 1A – MSB primeiro. Portanto, a alternativa C é a correta.
NÃO CAIA NESSA!
Muitos candidatos confundem "sem conversão" com cópia bit a bit dos bytes, o que manteria a ordem original (alternativa B). Porém, a banca entende que o dado é lido como um inteiro de 32 bits e rearmazenado no sistema destino, invertendo-se automaticamente a ordem dos bytes para respeitar o endianess local.
Alternativa A — ❌ Incorreta
A sequência 2B 00 1A 0F não corresponde à ordem big endian do valor original. Os bytes estão desordenados.
Alternativa B — ❌ Incorreta
1A 0F 2B 00 é exatamente a sequência little endian original. Se houvesse cópia física de bytes, essa seria a resposta; mas a interpretação correta para "transferir sem conversão" é que o valor inteiro é mantido e rearmazenado no novo formato, gerando a sequência da alternativa C.
Alternativa C — ✅ Correta ⟵ GABARITO
00 2B 0F 1A é a representação big endian do valor 0x002B0F1A. O byte mais significativo (00) no menor endereço, seguido de 2B, 0F e 1A (LSB).
Alternativa D — ❌ Incorreta
00 B2 F0 A1 inverte pares de nibbles dentro de cada byte (ex.: 1A virou A1), o que não ocorre na conversão de endianess.
Alternativa E — ❌ Incorreta
A1 F0 B2 00 também inverte nibbles e ainda troca a ordem dos bytes de forma incorreta.