Questões de Concurso Público INPE 2024 para Tecnologista Júnior I - Desenvolvimento de Software Embarcado

Foram encontradas 45 questões

Q2515858 Arquitetura de Computadores
A figura a seguir mostra a forma de onda gerada por uma UART a ser posteriormente convertida em padrão RS-232, sem paridade e com palavras de 8 bits. Repare que o tracejado delimita o tamanho de um bit.
Imagem associada para resolução da questão

Assinale a opção que indica o primeiro byte gerado, em binário.
Alternativas
Q2515859 Programação
A figura a seguir mostra propriedades de uma UART retirada do Painel de Controle de um sistema operacional de 32 bits.
Para transmitir alguns caracteres, usou-se pela primeira vez o seguinte código em linguagem C:

handle = CreateFile("COM6",...);
WriteFile(handle,"Transmissao de uma sequencia de bytes",
                             38,&ok,NULL).

Imagem associada para resolução da questão

O último caractere transmitido com o código foi
Alternativas
Q2515860 Eletricidade
A tela de osciloscópio a seguir foi capturada de uma comunicação USB 1.1 durante um token do tipo “Start Of Frame”.
Imagem associada para resolução da questão

Fonte:“Microprocessadores x86: Arquitetura e Interfaceamento.” Ed. Interciência.

Os campos destacados (SYNC, PID, Quadro, CRC e SE0) representam, respectivamente,
Alternativas
Q2515861 Arquitetura de Computadores
A figura a seguir foi retirada de uma comunicação síncrona SPI usando o mostrador digital MAX 7219.
Imagem associada para resolução da questão

Fonte: Módulos e Sensores: Guia de Interface com o Arduino. Editora Interciência.

Sabe-se que a amostragem é no flanco de subida do relógio. Os dois bytes comunicados, em hexadecimal, são
Alternativas
Q2515862 Arquitetura de Software
Com relação aos diversos modelos de ciclo de vida de um software, considere a seguinte situação hipotética:

Uma equipe inicia um projeto com uma abordagem linear e sequencial. No entanto, ao longo do projeto substitui esta abordagem por um modelo com ênfase em protótipos no início de cada estágio para validação de conceitos e na análise de riscos.

Assinale a opção que apresenta o modelo que esta equipe empregou inicialmente e o modelo pelo qual este foi substituído.
Alternativas
Q2515863 Engenharia de Software
O Scrum é um framework de gerenciamento que as equipes usam para se auto-organizar e trabalhar em direção a um objetivo em comum.

Sobre o Scrum, analise as afirmativas a seguir.

I. Por ser uma metodologia ágil, um de seus pilares é a eliminação de reuniões.
II. O backlog do produto é uma lista dinâmica de funcionalidades organizada por prioridades.
III. O Product Owner planeja os recursos necessários para cada Sprint.

Está correto o que se afirma em
Alternativas
Q2515864 Arquitetura de Software
No contexto de Projetos Orientados a Objetos, padrões de design são soluções generalizadas para problemas comuns de design de software.

Considere uma situação em que um desenvolvedor foi incumbido de elaborar um sistema de criação de documentos de diversos formatos, como Texto, Planilha e Apresentação, a serem definidos com base nos comandos do usuário.

Para lidar com esses requisitos, o padrão de design de software mais adequado seria o
Alternativas
Q2515865 Arquitetura de Software
Um sistema distribuído tem como objetivo coletar e distribuir dados meteorológicos para um conjunto de usuários. Para tal, foram empregados pelo desenvolvedor dois padrões de design:

Padrão (1): Criação de uma classe com apenas uma instância, responsável por controlar o acesso a um determinado sensor operado por equipes técnicas remotas.
Padrão (2): Definição de um objeto principal, de forma que todos os usuários dependentes são notificados e atualizados em tempo real.

Assinale a opção que indica os padrões de design (1) e (2), respectivamente. 
Alternativas
Q2515866 Arquitetura de Software
Existem diversas abordagens para técnicas, modelos e processos de um ciclo de vida de desenvolvimento de software.
Relacione as afirmativas I, II, III e IV às denominações mais adequadas correspondentes a essas técnicas, modelos e processos.

I. Usa uma abordagem que capacita o desenvolvedor e o cliente a entender e reagir aos riscos em cada etapa evolutiva.
II. Requisitos dos usuários são priorizados e os requisitos de mais alta prioridade são incluídos nas iterações iniciais.
III. Apropriado quando os requisitos são bem compreendidos e as mudanças serão bastante limitadas durante o design.
IV. Usado quando o desenvolvedor não tem certeza da eficiência de um algoritmo, ou da forma da interação homem/máquina 
Alternativas
Q2515867 Engenharia de Software
A integração de módulos e sistemas é uma etapa crucial no desenvolvimento de software, em que a abordagem de integração a ser tomada depende do cenário concreto.
Assinale a opção que apresenta o cenário para o qual a abordagem Big Bang é a mais adequada. 
Alternativas
Q2515868 Engenharia de Software
O desenvolvimento orientado a testes (TDD) engloba um conjunto de práticas que visam garantir a detecção de erros e a qualidade do código gerado.
No escopo do TDD, assinale a opção que apresenta a característica do teste unitário. 
Alternativas
Q2515869 Engenharia de Software
Em um projeto de desenvolvimento de software, uma equipe está focada em diferentes aspectos do sistema.
Assinale a opção que indica o diagrama UML mais adequado para se entender como os objetos do sistema interagem entre si ao longo do tempo.
Alternativas
Q2515870 Programação
Um sistema gera um vetor fixo de dados para efetuar o controle de um processo usando o código em C abaixo, em um compilador que trabalha com inteiros de 32 bits:

int matriz[] = { 1, 2, 3, 4, 5, 6, 7, 8 };
int *v,final;
v = &matriz[1];
final = v[3];

Após a execução desse trecho de código, o valor de final é: 
Alternativas
Q2515871 Programação
Softwares para sistemas embarcados podem ser desenvolvidos por meio de programação em linguagens assembly.

Com relação a linguagens assembly, analise as afirmativas a seguir.

I. São linguagens de programação de nível relativamente baixo, que utilizam mnemônicos equivalentes a representações de código binário (ou opcode) das instruções de uma determinada arquitetura de processador.
II. Em geral, possuem instruções de acesso direto à memória RAM, permitindo leitura e escrita de dados em posições determinadas por endereçamento direto.
III. São linguagens adequadas para se trabalhar com estruturas de dados complexas, tais como as classes, próprias de programação orientada a objetos.

Está correto o que se afirma em
Alternativas
Q2515872 Programação
Em um trecho de um programa em linguagem assembly para um microcontrolador 8051, foi encontrada a seguinte sequência de instruções:

MOV A, #049h
MOV B, #05h
MUL AB
RL A
RL A

Após o processamento dessas instruções, o valor armazenado no registrador acumulador é
Alternativas
Q2515873 Programação
Na programação de sub-rotinas em linguagem assembly, é comum o armazenamento temporário de dados e/ou de endereços, para que sejam restaurados logo após o retorno à função principal. As pilhas (stacks) são estruturas de dados do tipo LIFO (Last In, First Out) adequadas para armazenar dados e/ou endereços quando alguma sub-rotina é chamada. Os conjuntos de instruções das arquiteturas mais comumente utilizadas possuem instruções específicas de acesso à pilha.
Na arquitetura 8051, as instruções usadas para retirar dados da pilha e para armazenar dados na pilha, colocando-os em registradores de uso geral, são, respectivamente,
Alternativas
Q2515874 Programação
Com relação às linguagens de programação C/C++, analise as afirmativas a seguir.

I. Seja x uma variável do tipo inteiro. Na declaração abaixo, o ponteiro p é inicializado com o endereço de x. int *p = &x.
II. O comando break somente pode ser utilizado em conjunto com o comando switch.
III. O comando return encerra a execução de uma função.

Está correto o que se afirma em
Alternativas
Q2515875 Programação
Com relação à linguagem de programação C++ e o paradigma da orientação a objeto, analise as afirmativas a seguir.

I. Uma classe define o comportamento dos objetos que são instâncias da classe.
II. Em C++ é permitido criar classes derivadas, seguindo o conceito de herança de classes.
III. O polimorfismo permite que objetos de classes diferentes respondam de forma diferente à mesma função.

Está correto o que se afirma em
Alternativas
Q2515876 Sistemas Operacionais
A técnica de alocação de memória utilizada por um sistema operacional está intimamente ligada à ocorrência de fragmentação dessa memória.
Com relação à gerência de memória em sistemas operacionais, assinale a afirmativa correta.
Alternativas
Q2515877 Sistemas Operacionais
A divisão dos processos em threads permite a execução de tarefas de maneira paralela ou concorrente.
As threads, em um sistema operacional Linux, 
Alternativas
Respostas
1: D
2: A
3: E
4: D
5: C
6: B
7: B
8: D
9: A
10: E
11: A
12: A
13: B
14: C
15: B
16: D
17: E
18: E
19: D
20: C