Alternativa E - LIST P=16F877A
Introdução
A questão aborda a sintaxe básica do Assembler MPASM, utilizado para programação de microcontroladores da família PIC (como o PIC16F877A). O objetivo é identificar a diretiva específica que informa ao compilador qual dispositivo de hardware está sendo alvo do código.
Desenvolvimento
No ambiente de desenvolvimento da Microchip (antiga Microchip Technology), existem diretivas especiais que devem ser usadas no início dos arquivos de código fonte para configurar o ambiente de compilação.
Análise das Alternativas
- Alternativa A (
__config ...): Esta opção refere-se à definição de bits de configuração (fusíveis), como tipo de oscilador, watchdog timer, etc. Embora configure o comportamento do chip, não é a diretiva primária para selecionar o modelo do processador. - Alternativa B (
ORG 0): A diretiva ORG define o endereço de origem na memória de programa. Geralmente usada para definir o vetor de reset (ORG 000h), mas não seleciona o microcontrolador. - Alternativa C (
GOTO SETUP): Este é um comando de instrução de salto incondicional, usado para controlar o fluxo do programa durante a execução, não uma diretiva de pré-processamento. - Alternativa D (
#include p16F877a.inc): Esta linha importa o arquivo de definições de registros (SFRs) específico do dispositivo. É essencial para usar nomes simbólicos como PORTA, mas a seleção explícita do modelo geralmente precede ou acompanha esta inclusão via diretiva LIST. - Alternativa E (
LIST P=16F877A): A diretiva LIST com o parâmetro P= (Processor) é a forma padrão e obrigatória no MPASM para declarar qual microcontrolador será utilizado. Isso permite que o compilador selecione os códigos de operação (opcodes) corretos e os endereços de registradores específicos daquele modelo.
Tabela Comparativa
| Diretiva | Função Principal |
|---|
| LIST P=... | Seleciona o modelo do Processador (Resposta correta) |
| #include | Importa definições de Registradores |
| ORG | Define endereço inicial de memória |
| CONFIG | Configura bits de fusível/fuse |
Conclusão
A diretiva que informa explicitamente ao compilador qual microcontrolador será utilizado é a LIST P=16F877A. Portanto, a alternativa correta é a E.