Questão de Arquitetura de Computadores — Processadores — FCC 2017
Arquitetura de Computadores›Processadores
Código
fc036544
Banca
FCC
Órgão
DPE-RS
Ano
2017
Nível
Superior
Cargo
Analista - Desenvolvimento de Sistemas
Um Analista está usando um computador que possui 16GB de RAM. Executou um programa e obteve como resultado o seguinte endereço de memória de uma variável declarada como real: 000000000022FE48 e o seguinte endereço de memória de uma variável declarada como inteira: 000000000022FE4C. O Analista concluiu, corretamente, que
Ao processador do computador é de 32 bits.
Bo computador tem o correspondente a 2³⁶bytes de memória RAM.
Ca variável do tipo real ocupa 4 bytes.
Da variável do tipo real ocupa 16 bytes.
Ea variável do tipo inteiro ocupa 8 bytes.
Revelar gabarito e comentário▾
GabaritoC — a variável do tipo real ocupa 4 bytes.
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”.
Endereçamento de memória e tamanho de variáveis
Gabarito: letra C. A diferença entre os endereços fornecidos (000000000022FE48 e 000000000022FE4C) é de exatos 4 bytes (022FE4C - 022FE48 = 4). Isso indica que a variável declarada como real ocupa 4 bytes, pois a variável inteira começa imediatamente após o término da real. Logo, a conclusão correta é que a variável do tipo real ocupa 4 bytes.
A banca testa o conhecimento sobre a correspondência entre endereços consecutivos e o tamanho dos tipos de dados. Em C, por exemplo, o tipo float (real de precisão simples) ocupa 4 bytes, e o tipo int (inteiro) também ocupa 4 bytes na maioria das arquiteturas de 32 ou 64 bits. O endereço 4 bytes adiante confirma essa relação.
1Endereço real: 022FE48
2Endereço inteiro: 022FE4C
3Diferença: 022FE4C - 022FE48 = 4
4Variável real ocupa 4 bytes
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
O tamanho do endereço mostrado (64 bits, pois possui 16 dígitos hexadecimais) sugere um processador de 64 bits, não 32 bits. Além disso, a diferença de 4 bytes entre os endereços não depende da largura do processador.
Alternativa B — ❌ Incorreta
16 GB de memória RAM equivalem a bytes, e não bytes. O valor corresponderia a 64 GB.
Alternativa C — ✅ Correta ⟵ GABARITO
Como demonstrado, a diferença de 4 bytes entre os endereços consecutivos prova que a variável real ocupa exatamente 4 bytes. Isso é compatível com o tipo float (real de precisão simples).
Alternativa D — ❌ Incorreta
16 bytes é um tamanho muito grande para uma variável real simples. Tipos como double (8 bytes) ou long double (10 a 16 bytes) ocupam mais, mas a diferença de 4 bytes invalida essa hipótese.
Alternativa E — ❌ Incorreta
A variável inteira ocupa 4 bytes, pois o próximo endereço após a variável real (4 bytes) é exatamente o início da inteira. Se a inteira ocupasse 8 bytes, o endereço seguinte estaria 8 bytes adiante, o que não ocorre.