Baixe o app para aproveitar ainda mais
Prévia do material em texto
Acerto: 1,0 / 1,0 Avalie as asserções a seguir e a relação sugerida entre elas. I. Sobre os fatores de vantagem que a linguagem C acrescentou ao desenvolvimento com de sistemas embarcados, com relação à linguagem de montagem, podemos citar a portabilidade. PORQUE II. A portabilidade permite, principalmente em sistemas embarcados, o uso do código com poucas modificações para uso em outra arquitetura de processador, característica que não está presente na linguagem de montagem. A respeito dessas asserções, assinale a alternativa correta. A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. As asserções I e II são proposições falsas. 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. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I. Respondido em 02/11/2022 17:32:30 Explicação: Como os programas em linguagem de montagem são específicos para um processador, que possui arquitetura diferente de outros processadores, a linguagem não oferece portabilidade entre os sistemas. Para superar essa desvantagem, várias linguagens de alto nível, incluindo C, surgiram. Dentre elas, C obteve ampla aceitação e continua sendo a preferida em sistemas embarcados. A portabilidade é uma característica atribuída a um programa se ele puder ser usado em um sistema operacional ou arquitetura diferente daquele em que foi criado, sem a necessidade de grandes retrabalhos. 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? 126 207 116 201 156 Respondido em 02/11/2022 17:33:33 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 Nomes de variáveis em C seguem algumas regras. Qual dos seguintes nomes de variável abaixo está errado? 1_num Questão1a Questão2a Questão3a num_ _num1 _1num num_1 Respondido em 02/11/2022 17:28:10 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 Calcule as expressões aritméticas abaixo e considere a precedência entre operadores: Exp1 = 24 - 3 * 5; Exp2 = (4 - 2 * 6) / 4 + 1; Exp3 = 6 / ((2 + 11) % 3) * 4; Marque a opção correta abaixo, que indica o resultado das expressões Exp1, Exp2 e Exp3: 4, 1 e 24 9, -1 e 1 9, 1 e -1 9, -1 e 24 4, -1 e 1 Respondido em 02/11/2022 17:29:53 Explicação: Calculando as expressões Exp1 = 24 ¿ 3 * 5 = 24 -15 = 9 Exp2 = (4 - 2 * 6) / 4 + 1 = (4 ¿ 12) / 4 + 1 =-8 /4 + 1 = -2 + 1 = -1 Exp3 = 6 / ((2 + 11) % 3) * 4 = 6 / ((13) % 3)*4 = 6 / 1 * 4 = 6 * 4 = 24 Acerto: 1,0 / 1,0 A linguagem C possui várias funções, dentre elas se destaca a função scanf() que tem o objetivo de ler uma variável pelo teclado. Considerando que a variável num é do tipo inteiro (int), qual a opção abaixo é verdadeira? scanf("%d", &num); scanf("%f", &num); scanf("%p", &num); scanf("%c", &num); scanf("%lf", &num); Respondido em 02/11/2022 17:36:43 Explicação: Questão4a Questão5a Como o tipo da variável num é inteira (int). Então o especificador %d é deve ser utilizado para números inteiros. Na opção que apresenta o %f é usado erroneamente o especificador f para float. Na opção que apresenta o %lf é usado erroneamente o especificador lf para long float. Na opção que apresenta %c é usado erroneamente o especificador c para char. Na opção que uso o especificador %p é usado erroneamente o especificador para pointer (ponteiro). Acerto: 1,0 / 1,0 Uma variável do tipo básico unsigned char na linguagem C é armazenada em 1(um) byte de memória e o intervalo de valores permitido é de 0 a 255. Considerando o tipo básico char. Qual das alternativas abaixo é a correta quanto à quantidade de memória armazenada e o intervalo de valores usados pelo tipo char? 2 bytes; intervalo: -127 a 126. 2 bytes; intervalo: -255 a 0. 1 byte; intervalo: -127 a 127. 1 byte; intervalo: 1 a 255. 1 byte; intervalo: -128 a 127. Respondido em 02/11/2022 17:36:07 Explicação: O tipo char armazena valores inteiros com sinal que representam caracteres. O tipo char usa 8 bits (1 byte) para armazenar 256 valores, isto é, 28 valores. Como está definido na linguagem que o tipo char deve ter números positivos e negativos, é necessário usar um 1 bit para representar o sinal, sobram 7 bits para representar 128 (= 27 ) caracteres. Assim, para o tipo char, o valor_mínimo = -1*28-1 = -128 e o valor_máximo = 28-1 -1 = 127. Acerto: 1,0 / 1,0 Você está codificando um programa e precisa fazer uma conversão de tipo string para tipo inteiro, tomar uma decisão, e invocar uma determinada função em relação ao valor inteiro. Você sabe que existem na biblioteca padrão, funções de conversão de tipos. Assinale a opção correta, que indica o arquivo cabeçalho que você precisa incluir no programa para resolver este problema. < math.h > < ctype.h > < stdlib.h > < stdio.h > < time.h > Respondido em 02/11/2022 17:51:12 Explicação: a biblioteca < stdlib.h > possui funções de propósito geral como conversão de tipos, alocação e liberação de memória, ordenamento e busca e controle de processos. Acerto: 1,0 / 1,0 Com relação ao conceito de passagem de parâmetros, assinale a opção correta. O código de uma função só é executado quando esta é invocada em alguma parte do programa a que está de algum modo ligado. Questão6a Questão7a Questão8a Após o término de seu funcionamento, a função tem que devolver um valor para o programa que a invocou. Sempre que uma função é invocada (ou chamada), a função main() continua a executar suas instruções. O número de parâmetros enviados para uma função pode ser diferente do número de parâmetros existentes no cabeçalho da função, pois a função emprega os parâmetros que ela necessita. Um programa em C não precisa da função main() escrita no seu código, quando existem outras funções presentes no programa. Respondido em 02/11/2022 17:43:47 Explicação: O código de uma função só é executado quando esta é invocada em alguma parte do programa a que está de algum modo ligado. Acerto: 1,0 / 1,0 Qual componente da CPU é utilizado para traduzir os códigos das instruções do programa em sequências de ações? Unidade lógica e aritmética. Sequenciador de códigos. Sequenciador de instruções. Tradutor de instruções. Decodificador de instruções. Respondido em 02/11/2022 17:38:02 Explicação: As instruções do software de um sistema embarcado são armazenadas na memória de programa. Quando a CPU está executando as instruções, os códigos dessas instruções são buscados na memória e, em seguida, esses códigos precisam ser decodificados. O decodificador de instruções de um processador é um circuito combinacional, cujo objetivo é traduzir um código de instrução para uma sequência de ações que executa o que a instruçãoindica. Acerto: 1,0 / 1,0 Você foi designado para especificar um microcontrolador que deve controlar a velocidade de um motor DC, que pode ser regulado variando a tensão contínua aplicada aos seus terminais. Os dispositivos a seguir podem ser escolhidos em modelos de microcontroladores que você tem para especificar. I - ADC. II - DAC. III - RS232. IV - PWM. Qual opção indica o(s) componente(s) que você pode escolher para controlar o motor DC? I ou II. II ou III. II ou IV. II, III ou IV. Somente a II. Respondido em 02/11/2022 17:37:34 Questão9a Questão10a Explicação: Tanto um conversor digital para analógico (DAC) como um PWM (modulador por largura de pulsos) podem ser usados para controlar a velocidade de um motor DC, pois ambos permitem regular a quantidade de tensão nos terminais de um motor. Além disso, ambos podem ser componentes internos aos microcontroladores. O controle de velocidade por modulação de largura de pulso funciona acionando o motor com uma série de pulsos ''Ligado- Desligado'' e variando o ciclo de trabalho, que é a fração de tempo em que a tensão de saída está ''Ligada'' em comparação com quando está ''Desligada'', mantendo a frequência constante. O DAC é um dispositivo que transforma dados digitais em um sinal analógico, um valor de tensão contínua, o que também pode ser usado para controlar a velocidade do motor.
Compartilhar