Baixe o app para aproveitar ainda mais
Prévia do material em texto
03/05/2022 20:30 Estácio: Alunos https://simulado.estacio.br/alunos/ 1/6 Simulado AV Teste seu conhecimento acumulado Disc.: PROGRAMAÇÃO APLICADA A SISTEMAS ELÉTRICOS Aluno(a): MARCELO SANTOS DA SILVA 202008227976 Acertos: 8,0 de 10,0 23/03/2022 Acerto: 1,0 / 1,0 Considere as afirmações abaixo sobre sistemas embarcados. I - Todo sistema embarcado com RTOS é de tempo real. II - Todo sistema embarcado sem sistema operacional é de tempo real. III - Todo sistema embarcado bare metal é de tempo real. IV - Todo sistema embarcado com Linux é de tempo real. Quais as opções estão corretas? II e III II, III e IV Somente a II I, III e IV I, II e III Respondido em 30/03/2022 07:55:51 Explicação: Quando um sistema precisa responder a um evento ou a uma solicitação dentro de um tempo estritamente definido, chamamos isso de sistema de tempo real. Esse tempo definido é conhecido como prazo. Esses sistemas devem ser previsíveis e, portanto, são, por definição, determinísticos. Se um sistema roda em um sistema operacional, ele não é de tempo real. Com exceção do RTOS, que são os sistemas operacionais de tempo real. Sistemas embarcados sem sistema operacional, como os bare metal (microcontroladores) ou os baseados em dispositivos FPGA, são de tempo real. Portanto, a única alternativa que não está correta é a IV, pois Linux não é de tempo real. Acerto: 0,0 / 1,0 Nomes de variáveis em C seguem algumas regras. Qual dos seguintes nomes de variável abaixo está errado? 1_num _1num num_ _num1 num_1 Respondido em 28/03/2022 10:25:47 Questão1 a Questão2 a https://simulado.estacio.br/alunos/inicio.asp javascript:voltar(); 03/05/2022 20:30 Estácio: Alunos https://simulado.estacio.br/alunos/ 2/6 Explicação: Um nome de variável só pode ter letras (maiúsculas e minúsculas), dígitos e símbolo sublinhado ''_''. Outra regra é que a primeira letra de uma variável deve ser uma letra ou um sublinhado. Desta forma, somente a opção 1_num não atende às regras, pois começa com número, gerando um erro de compilação. Acerto: 1,0 / 1,0 Você recebeu valores em bases diferentes para realizar um cálculo. Os valores foram X = 34 (base decimal) e Y = 34 (base hexadecimal). Você precisa do resultado na base octal para comparar com o enviado por outro sistema. Qual o resultado de X + Y na base octal? 207 201 126 156 116 Respondido em 30/03/2022 07:56:09 Explicação: O procedimento mais conveniente é converter Y para a base 10, somar com X e depois converter o resultado para a base 8. Assim, Y=3416= 3x16 1+4x160=5210. X+Y=3410+5210= 8610. Para converter o resultado da base decimal para a base octal, devemos dividir 86 por 8, guardando o quociente e o resto da divisão, no caso, 10 e 6, respectivamente. O valor 6 será o menos significativo da representação em octal. Na sequência, divide- se o quociente (10) novamente por 8. O novo quociente é 1, com resto 2, o segundo número a ser coletado para formar o octal correspondente. O quociente 1, sendo menor que 8, fornecerá o número mais significativo do octal, que ficará 1268. Acerto: 1,0 / 1,0 Com relação às estruturas de repetição (ou laços) na linguagem C, o for, while e do-while. Qual opção abaixo é verdadeira? A condição dentro de um laço while e do-while não precisa ser colocada dentro de parênteses. No laço for, o número de vezes que as cargas iniciais são executadas (inicialização) é sempre igual ao número de iterações do laço. No laço for ou while, o número de vezes que a condição é testada é sempre igual ao número de iterações do laço. O laço do .. while executa sempre, pelo menos uma vez, o corpo do laço. Os laços while e for executam sempre, pelo menos uma vez, o corpo do laço. Respondido em 30/03/2022 07:56:14 Explicação: No comando do-while, a condição é testada no final do loop. Assim, os comandos ou comando serão executados pelo menos uma vez. No comando while, o teste da condição é realizado no início do bloco de instruções, por isso, pode ser que não seja executado. Já no laço for, os comandos serão executados um número determinado de vezes. Acerto: 1,0 / 1,0 Questão3 a Questão4 a Questão5 a 03/05/2022 20:30 Estácio: Alunos https://simulado.estacio.br/alunos/ 3/6 Um programa gera a sequência: 1 3 5 7 9. Qual das opções abaixo representa o código que gera a sequência acima? Obs: a variável n é do tipo inteira. for(n=1; n<=8; n=n+2) printf("%d '', n); for(n=1; n<10; n=n+1) printf("%d '', n); for(n=1; n<=10; n=n+1) printf("%d '', n); for(n=1; n<10; n=n+2) printf("%d '', n); for(n=2; n<9; n=n+2) printf("%d '', n); Respondido em 30/03/2022 07:56:24 Explicação: A sintaxe do comando é for(inicialização; condição; incremento) comando(s); Para gerar a sequência 1 3 5 7 9, a inicialização começa n = 1. O valor é incrementado de 2, por isso n = n + 2. E a repetição termina quando n<10, isto é, quando n=9. Acerto: 1,0 / 1,0 Dentre os operadores da linguagem C, o operador ternário (?) pode substituir a estrutura de condição if¿else. Dado a instrução abaixo: numero >= 0 ? numero++ : numero--; Se o valor da variável (numero) for -10, qual será o resultado do comando? -11 9 10 -10 11 Respondido em 30/03/2022 07:56:36 Explicação: Vamos explicar o código: numero >= 0 ? numero++ : numero--; Neste código se o número for maior ou igual a zero será incrementado, caso contrário será decrementado de uma unidade. Como a variável numero tem valor -10, que é menor que zero, então a variável será decrementada. Acerto: 1,0 / 1,0 Analise o código abaixo com relação ao escopo das variáveis e o resultado do programa após a execução: 1: #include 2: 3: int imprimir(int X, int Y) 4:{ 5: X--; 6: Y++; 7: printf("Valor de X = %d, Y = %d\n", X, Y); 8:} 9: Questão6 a Questão7 a 03/05/2022 20:30 Estácio: Alunos https://simulado.estacio.br/alunos/ 4/6 10: main () { 11: int X,Y; 12: X = 100; 13: Y = X - 40; 14: imprimir(X,Y); 15: printf ("Valor de X = %d, Y = %d\n", X, Y); 16: } Assinale a resposta correta da saída do programa acima. Valor de X = 100, Y = 60 Valor de X = 100, Y = 60 Valor de X = 99, Y = 60 Valor de X = 100, Y = 61 Valor de X = 100, Y = 60 Valor de X = 99, Y = 61 Valor de X = 100, Y = 60 Valor de X = 60, Y = 61 Valor de X = 99, Y = 61 Valor de X = 100, Y = 60 Respondido em 30/03/2022 07:56:41 Explicação: Verifica-se que na linha 14 a função imprimir(X,Y) é chamada e recebe como parâmetros X=100 e Y=60. Após a execução dos comandos nas linhas 5 e 6, X = 99 e Y = 61 (variáveis locais na função imprimir). O comando "printf ("Valor de X = %d, Y = %d\n", X, Y);" (localizado na linha 7) imprime o resultado "Valor de X = 100, Y = 60". Acerto: 1,0 / 1,0 Analise o programa abaixo e responda a opção correta: 01: #include 02: 03: int f1 (int x, int y) { 04: int res; 05: if (y != 0) { 06: res = x / y; 07: else { 08: res = 1 / x; } 09: while (x > y) { 10: res = res + x; 11: x = x - 4; 12: } 13: return res; 14: } 15: 16: main() { Questão8 a 03/05/2022 20:30 Estácio: Alunos https://simulado.estacio.br/alunos/ 5/6 17: f1(10,2); 18: f1(5, 0); 19: f1(8, 4); 20: } Assinale a resposta correta com o valor da variável res, na sequência das chamadas da função f1. 21; 6,2; 10. 20; 6,0; 11. 10; 6,2; 10. 21; 6,0; 10. 10; 6,2; 21. Respondido em 30/03/2022 07:56:47 Explicação: A tabela abaixo mostra os valores das variáveis x, y e res após a execução da função f1 nas três chamadas. Chamada da Função f1(10,2) f1(5,0) f1(8,4) Variável x y res x y res x y res Valor 10 2 21 5 0 6,2 8 4 10 Acerto: 0,0 / 1,0 ''A área de sistemas embarcados representa um mercado imenso, da ordem de alguns bilhões de unidades produzidas anualmente, envolvendo microcontroladores de 8 a 64 bits. Historicamente, o desenvolvimentode software para sistemas embarcado era conduzido por técnicos e engenheiros em eletrônica uma vez que apenas eles eram capazes de compreender as especificidades dos circuitos por eles projetados. Com o aumento da complexidade do software embarcado, passou a haver uma necessidade crescente de aplicação de processos e técnicas de engenharia de software no desenvolvimento de sistemas embarcados.''(STADZISZ, Paulo Cézar; RENAUX, Douglas Paulo Bertrand. Software Embarcado. Curitiba: Universidade Tecnológica Federal do Paraná, (s.d.).) O texto apresentado nos leva a concluir que programar para sistemas embarcados se tornou mais simples do que para computadores de mesa. programar para sistemas embarcados não necessita mais de expertise em eletrônica. As IDEs vieram para tornar o desenvolvimento de sistemas embarcados mais complexo. programar para sistemas embarcados se tornou uma atividade que exige ferramentas mais completas, como IDEs. As IDEs utilizadas em computadores de uso geral podem ser utilizadas agora em sistemas embarcados. Respondido em 30/03/2022 07:56:52 Explicação: Os sistemas embarcados, tornando-se mais complexos, trazem maior exigência para os profissionais que atuam na área. As equipes de desenvolvimento passam a ter necessidade de contar, além da expertise em eletrônica, com conhecimento em ferramentas utilizadas na engenharia de software, e as IDEs específicas para sistemas embarcados facilitam a implementação dessas técnicas, simplificando o processo e aumentando a produtividade. Acerto: 1,0 / 1,0 O IDE (ambiente de desenvolvimento integrado) reúne recursos em um mesmo ambiente para facilitar o desenvolvimento de sistemas embarcados. Qual o mínimo de recursos para um software ser considerado um Questão9 a Questão10 a 03/05/2022 20:30 Estácio: Alunos https://simulado.estacio.br/alunos/ 6/6 IDE para desenvolvimento de aplicações embarcadas com microcontroladores? Gerenciador de projeto e depurador. Compilador, depurador e editor de texto. Editor de texto e compilador. Editor de texto, gerenciador de projeto e ferramentas de compilação. Gerenciador de projeto e montador. Respondido em 30/03/2022 07:57:01 Explicação: As ferramentas mais comuns para se programar sistemas embarcados passaram a ser reunidas em um mesmo ambiente nas IDEs. Assim, os programadores não precisam mais sair de um programa e passar para outro, do editor para o compilador ou montador, continuamente. Além dessas ferramentas, o editor de texto e as possíveis ferramentas de compilação, os IDEs precisam ter no mínimo um gerenciador de projeto, em que os arquivos-fonte podem ser acrescentados. Depuradores são encontrados hoje nos melhores IDEs, mas não são imprescindíveis para o desenvolvimento de sistemas mais simples. javascript:abre_colabore('38403','278668365','5153108988');
Compartilhar