Apesar da linguagem de programação para Assembly não ser amplamente utilizada nos desenvolvimentos de programas embarcados nos dias atuais, é muito importante que programadores dessa área a conheçam minimamente. Mesmo que utilizem linguagens de mais alto nível, o conhecimento básico sobre como são as instruções e o funcionamento interno do núcleo e memórias se mostra relevante quando se constrói projetos mais complexos, e erros complicados aparecem, como sempre ocorre. Nessas ocasiões, é necessário depurar (ou “debugar”, como também se diz) o sistema em camadas mais baixas para encontrar as anomalias que causam as falhas de comportamento.
A respeito da programação de microcontroladores, mais precisamente o ATmega328 nas linguagens C e Assembly, analise na imagem seguinte os dois trechos de programa:
Figura – Trechos de programa em linguagens Assembly e C.
....................IMAGEM EM ANEXO........................
A partir dessa análise, considere as seguintes frases:
I – Os dois trechos de programa são equivalentes, mas ambos precisam de algumas alterações de sintaxe para se tornarem compiláveis, considerando a parte mostrada.
II – No programa em Assembly, a diretiva do arquivo include está escrito na forma correta. No programa em C, o include não deveria estar escrito como aparece, mas sim na forma #include .
III – No programa em Assembly, as instruções para carregar os registradores de uso geral a partir de constantes estão trocadas com as instruções de carregá-los a partir de variáveis na memória. Uma deveria ter sido usada no lugar da outra
IV – As variáveis declaradas no programa em Assembly estão reservadas em uma área impropria da memória de dados, pois a região reservada para os dados voláteis do usuário começa a partir do endereço de memória 0x0100.
V – No programa em C não está faltando o indicador de separação de comandos “;”, na declaração das variáveis e nos 3 comandos que aparecem, pois o seu uso não é obrigatório para a compilação. Os comentários no programa em C estão escritos indevidamente, uma vez que a única forma correta é /* comentário */.
VI – As atribuições em linguagem C são feitas somente com o símbolo de igual, a forma em que aparece está errada e deve ser usada somente para construir condições lógicas nos comandos de controle.
Algumas dessas afirmativas são verdadeiras e outras não. Qual das alternativas seguintes representa a ordem correta?
Escolha uma:
a. V, V, F, F, V, F (Incorreto)
b. V, V, F, V, V, F
c. V, F, V, F, F, V
d. F, V, V, F, V, V
e. V, V, V, V, F, V
Anexos:
Soluções para a tarefa
Respondido por
59
RESPOSTA CORRETA LETRA "E"
graitonneves:
V, V, V, V, F, V
Perguntas interessantes
História,
9 meses atrás
Matemática,
9 meses atrás
Matemática,
9 meses atrás
Matemática,
1 ano atrás
Matemática,
1 ano atrás