December 2019 1 44 Report
As diretivas de compilação são comandos usados pelo compilador, mas não comandos que se tornarão instruções de um programa compilado, e ajudam o programador aumentando a legibilidade do código. A respeito das diretivas de compilação da linguagem C, voltada para o microcontrolador ATmega328, qual das alternativas abaixo pode ser considerada verdadeira? Escolha uma: a. A diretiva “main(){“ é utilizada para definir onde é o começo da memória de dados, ou seja, onde as variáveis do programa estarão para serem manipuladas. Todos os programas em linguagem C devem possuir pelo menos uma diretiva dessa, indicando a passagem para o loop infinito. b. A diretiva “.EQU” é responsável por registrar um valor em uma variável, mas que pode ser alterada posteriormente pelo código através de outra “.EQU”, diferentemente da diretiva “#define”, que associa uma variável a um valor definitivamente. c. A diretiva “#define” é obrigatória para todos os programas embarcados e deve ser usada para definir todas as variáveis do programa. d. A diretiva “while(TRUE)” serve para indicar onde estará no código o loop infinito, que pode ser unitário, mas pode ser múltiplo, se o programa demandar muitos processamentos. Essa diretiva não existe em Assembly, nem alguma correspondente. e. A diretiva “#include” é equivalente a diretiva de Assembly “.INCLUDE”, que é utilizada para incluir algum arquivo para o seu programa. Apesar de não ser obrigatório, é muito útil na construção de programas embarcados, principalmente na primeira linha: #include, incluindo os nomes registradores para a utilização no programa usuário.
Please enter comments
Please enter your name.
Please enter the correct email address.
You must agree before submitting.

Lista de comentários


More Questions From This User See All
A linguagem de programação C permite que trechos de códigos mais longos, complexos e trabalhosos de se construir em linguagem Assembly sejam feitos de forma mais sintética, simples e abstrata, tornando o processo de programação muito mais eficiente. Considere os dois trechos de programa para o microcontrolador ATmega328, um em linguagem Assembly, e o outro em linguagem C, na figura 2.6 Figura 2.6: Dois trechos de programa embarcado. Comparação entre dois trechos de porgrama supostamente equivalentes, em linguagens Assembly e C. Fonte: Elaborada pelo autor A respeito da comparação entre eles, qual das alternativas abaixo é correta? Escolha uma: a. Não são equivalentes, mas seriam se as duas variáveis fossem testadas com o valor zero ao invés de um, no trecho em C (à direita), e a operação lógica fosse AND “&&” (E), ao invés de OR “||”(OU), no mesmo trecho. b. Não são correspondentes, mas seriam se a primeira instrução de salto condicionado em assembly fosse “BREQ” ao invés de “BRNE”, e se a variável VARI1 fosse testada com o valor zero ao invés de um no trecho em linguagem C. c. Não são equivalentes, mas seriam se a variável VARI1 fosse testada com o valor zero ao invés de um, no trecho em C (à direita), e se a operação lógica fosse XOR “^” (OU exclusivo), ao invés de OR “||”(OU). d. Não se correspondem, e teriam que ser reescritos de outra maneira, pois não há nenhuma alteração que possa ser feita para torna-los equivalentes, devido às suas estruturas não permitirem isso. e. São perfeitamente equivalentes, ou seja, vão produzir o mesmo efeito se forem processados pelo ATmega328.
Responda

Recomendar perguntas

Helpful Social

Copyright © 2025 ELIBRARY.TIPS - All rights reserved.