Baixe o app para aproveitar ainda mais
Prévia do material em texto
13/09/2022 15:00 Estácio: Alunos https://simulado.estacio.br/alunos/ 1/7 Meus Simulados Teste seu conhecimento acumulado Disc.: PROGRAMAÇÃO APLICADA A SISTEMAS ELÉTRICOS Aluno(a): PAULO HENRIQUE SANT ANNA 202102243017 Acertos: 7,0 de 10,0 13/09/2022 Acerto: 1,0 / 1,0 Um sistema embarcado pode ser gerenciado por software embarcado ou não, dependendo do dispositivo central de processamento utilizado no projeto. Qual alternativa abaixo corresponde aos dispositivos que podem controlar um sistema embarcado sem software embarcado? 4-5 5-6 3-5 1-3 1-2 Respondido em 13/09/2022 14:47:26 Explicação: Essencialmente, um FPGA é um circuito de hardware que um usuário pode programar para realizar uma ou mais operações lógicas. Os FPGAs são circuitos integrados formados por conjuntos de circuitos em forma de array ou matrizes. Esses circuitos, ou matrizes, são grupos de portas lógicas programáveis, memória ou outros elementos. Assim, o projetista pode descrever seu hardware de controle, que não terá um software embarcado ou firmware. Os ASICs seguem a mesma abordagem de criação de um hardware de controle específico. Porém, eles são projetados e fabricados sem possibilidade de serem reprogramados, como os FPGAs. Assim, funcionam da mesma forma durante toda a vida útil. 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? 116 Questão1 a Questão2 a https://simulado.estacio.br/alunos/inicio.asp javascript:voltar(); 13/09/2022 15:00 Estácio: Alunos https://simulado.estacio.br/alunos/ 2/7 126 156 201 207 Respondido em 13/09/2022 14:48:30 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 Examinando as regras para soma lógica abaixo, vemos que os valores se assemelham à tabela-verdade de uma porta lógica. Que tipo de porta é essa? NAND XOR AND NOR OR Respondido em 13/09/2022 14:50:23 Explicação: A soma lógica é comumente conhecida como adição booleana, pois uma função OR produz o termo somado de duas ou mais variáveis de entrada, ou constantes. Assim, a equação booleana para uma porta OR de 2 entradas é dada como: Q = A + B, ou seja, Q é igual a A OU B. Acerto: 1,0 / 1,0 Uma variável chamada vetor pode armazenar até 4 (quatro) valores do tipo inteiro. Foi definida com a seguinte declaração: int vetor[4]; A figura abaixo representa o armazenamento do vetor na memória do computador. Posição de memória 1000 1004 1008 1012 Valor Índice do vetor vetor () vetor(1) vetor(2) vetor(3) Foram executadas as seguintes instruções listadas abaixo: Questão3 a Questão4 a 13/09/2022 15:00 Estácio: Alunos https://simulado.estacio.br/alunos/ 3/7 1. for (int i = 0; i < 4; i++) vetor[i] = 0; 2. vetor[1] = 10; vetor[3] = 20; 3. vetor[1] = vetor[3]/vetor[1]; 4. vetor[0] = vetor[1] + vetor[2]; Qual das opções abaixo representa a sequência armazenada no vetor (vetor[0], vetor[1], vetor[2], vetor[3]) após a execução das instruções acima: 2 2 0 10 0 2 0 20 2 2 0 22 2 0 0 20 2 2 0 20 Respondido em 13/09/2022 14:52:09 Explicação: A tabela abaixo apresenta os valores armazenados em cada elemento após a execução dos comandos em cada linha. Nr da linha vetor[0] vetor[1] vetor[2] vetor[3] 1 0 0 0 0 2 0 10 0 20 3 0 2 0 20 4 2 2 0 20 Acerto: 1,0 / 1,0 Interprete o programa abaixo e marque a opção que corresponde ao que o programa resolve. main() { int i; char palavras[4][30]; for(i=0;i<4;i++) { printf("Informe palavra %d: '',i+1); gets(palavras[i]); } for(i=3;i>=0;i--) printf("%s\n'',palavras[i]); } Assinale a opção correta: O programa lê e imprime três palavras. O programa lê e imprime a concatenação de três palavras. O programa lê e imprime quatro palavras. O programa lê e imprime a concatenação de quatro palavras. O programa lê quatro palavras e imprime em ordem inversa às palavras. Respondido em 13/09/2022 14:52:52 Questão5 a 13/09/2022 15:00 Estácio: Alunos https://simulado.estacio.br/alunos/ 4/7 Explicação: O programa declara duas variáveis, i e palavra, sendo palavra uma matriz de 4 linhas e 30 colunas. Logo em seguida, a estrutura de repetição for é composta de 2 instruções, a primeira instrução printf imprime na tela a informação: Informe a palavra e em seguida a instrução gets ler a palavra informada e armazena na variável palavras. Após 4 loop na primeira estrutura de repetição for, uma segunda estrutura de repetição for é utilizada para imprimir na tela as 4 palavras armazenadas Acerto: 1,0 / 1,0 Analise o código abaixo. Int n = 1; while (n <= 7) { printf("n=%d\n",n); n = n + 1; } Após a verificação, escolha uma das opções abaixo que tenha a mesma saída que o comando while. for(n=1; n<=7; n--) printf("n=%d\n¿¿,n); for(n=1; n<=7; n++) printf("n=%d\n",n); for(n=1; n<6; n++) printf("n=%d\n",n); for(n=2; n<=7; n+-) printf("n=%d\n'',n); for(n=1; n<=6; n++) printf("n=%d\n",n); Respondido em 13/09/2022 14:53:45 Explicação: A sintaxe do comando é for(inicialização; condição; incremento) comando(s); Para gerar a sequência 1 2 3 4 5 6 7, a inicialização começa n=1. O valor é incrementado de 1, por isso n=n+1. E a repetição termina quando n<=7, isto é, quando chegou ao valor n=7. Acerto: 0,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: 10: main () { 11: int X,Y; Questão6 a Questão7 a 13/09/2022 15:00 Estácio: Alunos https://simulado.estacio.br/alunos/ 5/7 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 = 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 = 100, Y = 60 Valor de X = 99, Y = 61 Valor de X = 100, Y = 60 Valor de X = 100, Y = 60 Valor de X = 60, Y = 61 Respondido em 13/09/2022 14:49:25 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: 0,0 / 1,0 Analise programa abaixo que calcula a área de um cilindro através da função calcula_area(). Considere que: Área do círculo = PI x Raio x Raio, Comprimento da circunferência = 2 x PI x Raio, Programa: #include #define PI 3.14 float calcula_area(____ , ____) { float area = 0; area = __________________; return area; } main() { float altura = 0; float raio= 0; float area = 0; scanf("%f%f",&altura,&raio); Questão8 a 13/09/2022 15:00 Estácio: Alunos https://simulado.estacio.br/alunos/ 6/7 area = calcula_area(altura,raio); } Verifique o código da função calcula_area. Observe que tem três espaços a serem completados. Assinale a resposta correta que define os dois parâmetros e a expressão matemática que calcula a área do cilindro pela função calcula_area. float calcula_area(a , r) e area = 2*(PI * r * r) + a*(2*PI*r) float calcula_area(float a , float r) e area = (PI * r * r) + (2*PI*r) float calcula_area(int a , int r) e area = 2*(PI * r * r) + a*(2*PI*r) float calcula_area(float a , float r) e area = (PI * r * r) + a*(2*PI*r) float calcula_area(float a , float r) e area = 2*(PI * r * r) + a*(2*PI*r) Respondido em 13/09/2022 14:55:56 Explicação: A função calcula_area recebe dois parâmetros do tipo float (número real). A altura representada pela variável a e o raio, representado pela variável r. Assim, precisa definir dois parâmetros (float a , float r). A área do cilindro é a soma de três áreas: área da base superior (PI * r * r) mais área da base inferior (PI * r * r) mais área da superfície lateral a*(2*PI*r). Assim, a área total é representada pela expressão area = 2*(PI * r * r) + a*(2*PI*r). Acerto: 1,0 / 1,0 Um processo de depuração tradicional interrompe a execução do programa para examinar variáveis e estado das memórias e registradores. Qual a desvantagem desse processo em sistemas embarcados? Parar o programa pode reduzir o tempo de processamento do sistema. Parar o programa pode consumir mais energia. Parar o programa pode interferir no comportamento do sistema. Parar o programa pode mudar os valores das variáveis na memória RAM. Parar o programa pode alterar os registradores da CPU. Respondido em 13/09/2022 14:57:41 Explicação: Alguns programas embarcados não podem ser analisados com o seu código parado, como, por exemplo, os que realizam atuação em função de dados que recebem, como em controle de malha fechada. Assim, parar o programa pode interferir no comportamento do sistema. Nesse caso, técnicas de impressão ou rastreamento podem ser utilizadas, em que o dispositivo em teste envia constantemente informações de depuração, sem interrompê-lo. Acerto: 0,0 / 1,0 Avalie as asserções a seguir e a relação sugerida entre elas. I. Um analisador lógico, instrumento para capturar, exibir e medir vários sinais eletrônicos simultaneamente em um circuito digital, pode ser usado na depuração de rastreamento em tempo real PORQUE II. Ele pode avaliar sinais do sistema embarcado sem alterar ou interferir no desempenho do processo. A respeito dessas asserções, assinale a alternativa correta. As asserções I e II são proposições falsas. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I. A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. Questão9 a Questão10 a 13/09/2022 15:00 Estácio: Alunos https://simulado.estacio.br/alunos/ 7/7 As asserções I e II são proposições verdadeiras e a II é uma justificativa correta da I. A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. Respondido em 13/09/2022 14:59:41 Explicação: Verificar sinais com analisadores lógicos é um método de depuração que não lê registros que podem causar um efeito colateral no dispositivo, atrasando o processamento, como ocorre, por exemplo, com a depuração por impressão de dados por porta serial. O impacto do depurador no dispositivo é bem definido. Existe o controle sobre o que acontece com o depurador e como ele afeta o dispositivo de destino. Assim, como não afeta o determinismo do dispositivo, o analisador lógico pode ser usado na depuração de rastreamento em tempo real. javascript:abre_colabore('38403','293137232','5649301458');
Compartilhar