Buscar

Avaliação II -Teoria de Microcontroladores Microprocessadores

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

05/04/2022 22:12 Avaliação II - Individual
1/6
Prova Impressa
GABARITO | Avaliação II - Individual (Cod.:744024)
Peso da Avaliação 1,50
Prova 44728476
Qtd. de Questões 10
Acertos/Erros 9/1
Nota 9,00
Os algoritmos são uma maneira de formalizar uma sequência de passos para execução de uma
atividade. A formalização é necessária para que diferentes pessoas possam entender e repetir os
passos para chegar à solução do problema. São exemplos: executar a operação de soma em uma
calculadora; fazer uma transferência bancária; ajustar o horário no celular; programar um DVD para
gravar um programa etc. Com base nesse assunto, analise as sentenças a seguir:
I- A descrição é a forma mais próxima de se representar um algoritmo, utilizando assim uma
linguagem genérica próxima da linguagem escrita, mas estruturada em formato de código.
II- No pseudocódigo, o algoritmo é dito diretamente em linguagem escrita. É o caso das receitas e
manuais que descrevemos anteriormente, sendo especialmente útil para explicar como o algoritmo
funciona através de linguagem escrita.
III- O fluxograma é a representação gráfica do algoritmo, sendo utilizadas formas e setas para indicar
o sentido de execução das instruções e as decisões tomadas pelo algoritmo.
Assinale a alternativa CORRETA:
A Somente a sentença III está correta.
B As sentenças I e III estão corretas.
C As sentenças I e II estão corretas.
D As sentenças II e III estão corretas.
C++ é uma linguagem de programação compilada multiparadigma, ou seja, seu suporte inclui
linguagem imperativa, orientada a objetos e genérica, e de uso geral. Desde os anos 1990 é uma das
linguagens comerciais mais populares, sendo bastante usada também na academia por seu grande
desempenho e base de utilizadores. Ela é utilizada na programação de microcontroladores, seguida
pela linguagem Assembly. Com base nesse contexto, classifique V para as sentenças verdadeiras e F
para as falsas:
( ) Um tipo de dado na linguagem C++ é o inteiro (denotado por int). 
( ) O dado Flutuante na linguagem C++ é utilizado para armazenar dados numéricos positivos e sem
casas decimais.
( ) O dado Lógico é utilizado para armazenar números inteiros expressos por vírgula, ou seja, os
famosos números decimais.
( ) Uma variável do tipo float utiliza 32 bits de memória.
Assinale a alternativa que apresenta a sequência CORRETA:
A V - F - F - V.
B F - V - F - V.
 VOLTAR
A+ Alterar modo de visualização
1
2
05/04/2022 22:12 Avaliação II - Individual
2/6
C F - V - V - F.
D V - F - V - F.
A biblioteca padrão do C++ incorpora a biblioteca padrão do C, com algumas pequenas
modificações, para trabalhar melhor com as novas funcionalidades criadas pela linguagem. Outra
grande parte da biblioteca é composta pela biblioteca padrão de gabaritos. Ela fornece ferramentas
úteis como containers (vetores, listas, entre outros), algoritmos (filtragem de elementos
de container, busca, ordenação, entre outros) e iteradores (ponteiros inteligentes genéricos para
acessar tais containers e interligá-los aos algoritmos). 
Com base nesse contexto, assinale a alternativa CORRETA:
A
Outro fato que precisamos nos atentar é que a linguagem C++ é o que chamamos de Term
Sensitive. Isso indica que a mudança entre maiúsculas e minúscula muda totalmente o significado
do elemento.
B
Outro fato que precisamos nos atentar é que a linguagem C++ é o que chamamos de Case
Sensitive. Isso indica que a mudança entre maiúsculas e minúscula muda totalmente o significado
do elemento.
C
Outro fato que precisamos nos atentar é que a linguagem C++ é o que chamamos de Out
Sensitive. Isso indica que a mudança entre maiúsculas e minúscula muda totalmente o significado
do elemento.
D
Outro fato que precisamos nos atentar é que a linguagem C++ é o que chamamos de In Sensitive.
Isso indica que a mudança entre maiúsculas e minúscula muda totalmente o significado do
elemento.
Assim como a linguagem, sua biblioteca padrão também sofreu melhorias ao longo do tempo. Sua
primeira adição foi a biblioteca de E/S, e posteriormente a Standard Template Library (STL); ambas
tornaram-se algumas das principais funcionalidades que distanciaram a linguagem em relação a C.
Criada primordialmente na HP por Alexander Stepanov no início da década de 1990 para explorar os
potenciais da programação genérica, a STL foi apresentada a um comitê
unificado ANSI e ISO em 1993 à convite de Andrew Koenig. Após uma proposta formal na reunião
do ano seguinte, a biblioteca recebe o aval do comitê. 
Com base nesse contexto, assinale a alternativa CORRETA:
A Enquanto o valor de um inteiro pode mudar a qualquer momento durante a execução de um
código, o valor das constantes permanece inalterado do começo ao fim da execução.
B Enquanto o valor de uma variável pode mudar a qualquer momento durante a execução de um
código, o valor das constantes permanece inalterado do começo ao fim da execução.
C Enquanto o valor de uma constante pode mudar a qualquer momento durante a execução de um
código, o valor das variáveis permanece inalterado do começo ao fim da execução.
D Enquanto o valor de uma string pode mudar a qualquer momento durante a execução de um
código, o valor das variáveis permanece inalterado do começo ao fim da execução.
3
4
05/04/2022 22:12 Avaliação II - Individual
3/6
A lógica trata justamente da relação de causa e consequência que vemos no dia a dia, mas não
percebemos. Ao fazer um bolo, por exemplo, seguimos uma sequência lógica de instruções, onde
uma instrução depende da outra para ser realizada. Podemos dizer assim, que muito do que fazemos é
executado de maneira lógica, seguindo uma sequência de instruções. Na programação, essa maneira
lógica de pensar, a fim de gerar uma sequência de instruções, a serem lidas pelo computador é
conhecido como lógica de programação. A lógica de programação não depende da linguagem
escolhida. Na verdade, a linguagem é apenas a forma de se comunicar com o dispositivo.
Com base nesse assunto, analise as sentenças a seguir: 
I- É comum que se inicie o processo de desenvolvimento pela lógica de programação, sendo gerado
assim uma sequência de instruções, que futuramente são implementados em um programa escrito em
linguagem x ou y.
II- À sequência de instruções lógicas damos o nome de algoritmo, e é mais comum vê-los no nosso
dia a dia do que você pensa. Um exemplo simples seriam as receitas, mas podemos citar também os
processos industriais, manuais de instruções e até mesmo as bulas de medicamentos.
III- O pictograma é a representação gráfica do algoritmo, sendo utilizadas formas e setas para indicar
o sentido de execução das instruções e as decisões tomadas pelo algoritmo.
Assinale a alternativa CORRETA:
A Somente a sentença III está correta.
B As sentenças I e II estão corretas.
C As sentenças I e III estão corretas.
D As sentenças I e II estão corretas.
A linguagem C é mais complicada, e tem de se ter mais atenção a erros de lógica, porém, é mais fácil
corrigir os erros que em C++, pois muitas das sintaxes do C++ são sutis, e quando se erra alguma
coisa mínima, o código simplesmente não funciona, ou em caso de erros menores, o código passa a
apresentar problemas muito difíceis de identificar. Alguns dos mais conhecidos programas são feitos
em C++, ou parte dos seus códigos são nessa linguagem. Alguns deles são: Adobe Photoshop,
MySQL, Mozilla Firefox, Internet Explorer, Microsoft Windows, entre vários outros.
Com base nesse assunto, analise as sentenças a seguir: 
I- Em linguagens de alto nível como é o caso do Assembly, é comum armazenarmos dados em
variáveis, ao invés de registradores.
II- Uma constante é um endereço de memória utilizado para armazenar temporariamente um dado.
Apesar de ser possível referenciar diretamente o endereço de memória da constante, é comum
deixarmos essa escolha por conta do compilador.
III- Apesar dos tipos de dados serem essencialmente iguais aos estudados a nível de máquina, existe
uma maneira diferente de tratá-los utilizando a linguagem C++.
Assinale a alternativa CORRETA:A As sentenças II e III estão corretas.
B Somente a sentença III está correta.
C Somente a sentença II está correta.
D As sentenças I e III estão corretas.
5
6
05/04/2022 22:12 Avaliação II - Individual
4/6
Apesar de ainda ser requerida em algumas áreas específicas, e ser especialmente útil para aprender a
arquitetura de processadores, a linguagem Assembly não é mais tão utilizada assim na programação
de microcontroladores. No lugar dela, a linguagem C++ está entre as mais utilizadas para a
programação de microcontroladores. 
Com base nesse contexto, assinale a alternativa CORRETA:
A
Além de ser uma linguagem de alto nível, a linguagem C++ possui a vantagem de possuir
códigos simples e eficientes, além também de possuir recursos como orientação a objetos,
tratamento de exceções e coleta de lixo de memória.
B
Além de ser uma linguagem sem nível, a linguagem C++ possui a vantagem de possuir códigos
simples e eficientes, além também de possuir recursos como orientação a objetos, tratamento de
exceções e coleta de lixo de memória.
C
Além de ser uma linguagem de baixo nível, a linguagem C++ possui a vantagem de possuir
códigos simples e eficientes, além também de possuir recursos como orientação a objetos,
tratamento de exceções e coleta de lixo de memória.
D
Além de ser uma linguagem de médio nível, a linguagem C++ possui a vantagem de possuir
códigos simples e eficientes, além também de possuir recursos como orientação a objetos,
tratamento de exceções e coleta de lixo de memória.
Por muito tempo, o C++ foi encarado como um superconjunto do C. Entretanto, em 1999, o novo
padrão ISO para a linguagem C tornou as duas linguagens ainda mais diferentes entre si. Devido a
essas incompatibilidades, muitas empresas que desenvolvem compiladores não oferecem suporte à
versão mais recente da linguagem C. Pode-se dizer que C++ foi a única linguagem entre tantas outras
que obteve sucesso como uma sucessora à linguagem C, inclusive servindo de inspiração para outras
linguagens como Java, a IDL de CORBA e C#. 
Com base nesse contexto, assinale a alternativa CORRETA:
A
As constantes podem ter diferentes tipos de dados, não se limitando apenas ao tipo inteiro. E, ao
contrário das variáveis, não precisamos declarar o tipo de uma constante, bastando, como vimos,
utilizar a diretiva #define, seguido do nome da constante e do valor.
B
As constantes podem ter diferentes tipos de dados, não se limitando apenas ao tipo inteiro. E, ao
contrário das variáveis, não precisamos declarar o tipo de uma constante, bastando, como vimos,
utilizar a diretiva #struct, seguido do nome da constante e do valor.
C
As constantes podem ter diferentes tipos de dados, não se limitando apenas ao tipo inteiro. E, ao
contrário das variáveis, não precisamos declarar o tipo de uma constante, bastando, como vimos,
utilizar a diretiva #org, seguido do nome da constante e do valor.
D
As constantes podem ter diferentes tipos de dados, não se limitando apenas ao tipo inteiro. E, ao
contrário das variáveis, não precisamos declarar o tipo de uma constante, bastando, como vimos,
utilizar a diretiva #main, seguido do nome da constante e do valor.
7
8
05/04/2022 22:12 Avaliação II - Individual
5/6
Linguagens de programação são responsáveis por transmitir instruções para o computador, para que
certas tarefas possam ser realizadas. Os computadores entendem apenas sequências de números
binários, e para um ser humano seria difícil decorar inúmeras combinações desses números como
representações de instruções. Para que a transmissão de instruções para o computador ocorra de
maneira mais fácil, foram criadas as linguagens de programação. Desde o surgimento da primeira
linguagem de programação (Assembly), na década de 1950, várias outras surgiram. Com base nesse
contexto, classifique V para as sentenças verdadeiras e F para as falsas:
( ) Estruturas de repetição são utilizadas quando um determinado bloco de código deve ser
executado várias vezes, evitando, assim, que as mesmas instruções sejam declaradas repetidamente.
( ) Ponteiros oferecem a possibilidade de armazenar vários elementos de um mesmo tipo em uma
única variável. Neles, cada elemento é indexado através de um índice.
( ) Strings são basicamente vetores de caracteres. Cada string deve terminar com o caractere nulo,
sendo necessário inclui-lo ao contar a quantidade de elementos da string.
( ) Constantes são trechos de código separados intencionalmente, de modo a serem reaproveitados
em vários pontos do código.
Assinale a alternativa que apresenta a sequência CORRETA:
A F - F - V - V.
B F - V - F - V.
C V - F - V - F.
D V - V - F - F.
Enquanto os Operadores Relacionais estabelecem as relações, os Conectivos irão ligar as Expressões
Lógicas das relações, dando origem a novas expressões compostas por 2 ou mais subexpressões.
Programar é dizer ao computador o que deve ser feito e, os Conectivos Lógicos e os Operadores
Relacionais serão os responsáveis por decidirem, ao analisar os valores, quais blocos de códigos
deverão ser executados. Com base nesse assunto, analise as sentenças a seguir:
I- A operação NÃO retorna zero, caso o resultado dentro dos parêntesis resulta em zero, e esse valor
não pode ser invertido pelo operador NÃO.
II- Os operadores E e OU são chamados também de conjunção e disjunção. 
III- O operador E resulta em um valor 1 caso os dois operadores que estiverem sendo testados sejam
também 1, de qualquer outra foram o resultado é 0.
IV- Já o operador OU resulta em um valor 1, caso um dos operadores tenha valor 1, ou se os dois
forem 1.
Assinale a alternativa CORRETA:
A As sentenças I, III e IV estão corretas.
B As sentenças I, II e III estão corretas.
C As sentenças II, III e IV estão corretas.
D As sentenças I e III estão corretas.
9
10
05/04/2022 22:12 Avaliação II - Individual
6/6
Imprimir

Outros materiais