Questão
ID 67361Disciplina: Tecnologia da Informação
Assunto: Big Endian - Little Endian
Ano: 2025 Banca: PERFIL - ENADE Órgão: Terceiro Simulado Pnd
Um professor de Organização e Arquitetura de Computadores está explicando como os dados são armazenados e manipulados em um sistema computacional. Ele quer que seus alunos compreendam a diferença entre os sistemas de numeração **big-endian** e **little-endian**, um conceito fundamental para a interoperabilidade entre sistemas com arquiteturas diferentes. Ele explica: "Quando um tipo de dado ocupa múltiplos bytes na memória (como um inteiro de 32 bits, que ocupa 4 bytes), a ordem em que esses bytes são armazenados no endereço de memória pode variar. Em um sistema **big-endian**, o byte mais significativo (o 'big end') é armazenado no primeiro endereço de memória (o endereço mais baixo). Em um sistema **little-endian**, o byte menos significativo (o 'little end') é armazenado no primeiro endereço. A maioria dos processadores modernos, como os x86 da Intel, são little-endian. Muitas arquiteturas de rede, no entanto, usam o formato big-endian como padrão (network byte order)." Para a atividade prática, ele pede aos alunos para considerarem o número inteiro de 32 bits `0x0A0B0C0D` (onde `0A` é o byte mais significativo) sendo armazenado no endereço de memória `100`.
Como este número seria armazenado na memória em um sistema big-endian e em um sistema little-endian?
I. Em um sistema **big-endian**, os bytes seriam armazenados na ordem em que são lidos: o byte `0A` no endereço 100, `0B` no 101, `0C` no 102 e `0D` no 103.
II. Em um sistema **little-endian**, os bytes seriam armazenados na ordem inversa: o byte menos significativo `0D` no endereço 100, `0C` no 101, `0B` no 102 e `0A` no 103.
III. A diferença entre big-endian e little-endian não tem consequências práticas, pois o sistema operacional converte automaticamente o formato, tornando-o transparente para o programador em todas as situações.
É correto o que se afirma em: