Alternativa D - I, II e III estão corretas.
Para responder a esta questão, precisamos compreender a organização dos registradores gerais na arquitetura ARM clássica (como nas versões ARMv4-T, ARMv5-T, etc., onde essa distinção é mais rígida).
Análise dos Registradores ARM
No estado ARM, existem 16 registradores de uso geral, denominados de R0 a R15. Cada um possui uma convenção de uso específica, embora a maioria seja flexível. Vamos analisar cada item:
Item I: Registradores R0 a R12
- Função: São considerados registradores de propósito geral (General Purpose Registers).
- Explicação: Podem ser utilizados livremente para armazenar dados, fazer cálculos intermediários ou endereços, dependendo da necessidade do programador. Não há restrição de hardware para seu uso, diferentemente dos registradores dedicados.
- Conclusão: A afirmação está correta.
Item II: Registrador R13
- Função: É convencionalmente designado como Stack Pointer (SP).
- Explicação: Ele aponta para o topo da pilha de memória (stack), onde são armazenados dados temporários, argumentos de funções e endereços de retorno durante interrupções ou chamadas de subrotinas. Embora tecnicamente possa ser usado como registrador geral, sua função primária e reconhecida é a gestão da pilha.
- Conclusão: A afirmação está correta.
Item III: Registrador R15
- Função: É o Program Counter (PC) ou Contador de Programa.
- Explicação: Este registrador armazena automaticamente o endereço da próxima instrução que deve ser executada pelo processador. Quando uma instrução termina, o PC é atualizado para apontar para a seguinte.
- Conclusão: A afirmação está correta.
Resumo Comparativo
| Registrador | Nome Comum | Função Principal |
|---|
| R0 - R12 | Propósito Geral | Dados e Operações |
| R13 | Stack Pointer (SP) | Controle da Pilha |
| R14 | Link Register (LR) | Retorno de Subrotina |
| R15 | Program Counter (PC) | Próxima Instrução |
Como todas as descrições apresentadas nas afirmações I, II e III correspondem exatamente à função padrão dos registradores no estado ARM, a única alternativa que engloba todas elas é a D.