Prévia do material em texto
Meus Simulados Teste seu conhecimento acumulado Disc.: COMPILADORES Aluno(a): PEDRO HENRIQUE CORREA TEIXEIRA 202104184271 Acertos: 10,0 de 10,0 29/06/2023 Acerto: 1,0 / 1,0 O que faz a análise léxica? Veri�ca se as estruturas do programa irão fazer sentido 4 durante a execução; Tratar erros de tipo no programa fonte; Lê caractere por caractere do texto encontrando sequências que constituem tokens; Veri�ca se a estrutura gramatical do programa está correta; É um sistema que aceita como entrada um programa escrito em uma linguagem de programação e produz como resultado um programa equivalente em outra linguagem; Respondido em 29/06/2023 10:14:03 Explicação: A resposta correta é: Lê caractere por caractere do texto encontrando sequências que constituem tokens; Acerto: 1,0 / 1,0 O tradutor que gera um código objeto a partir de uma linguagem de baixo nível é o : Compilador Interpretador Ligador Montador Carregador Respondido em 29/06/2023 10:15:40 Explicação: A resposta correta é: Montador. Questão1 a Questão2 a https://ead.estacio.br/alunos/inicio.asp javascript:voltar(); Acerto: 1,0 / 1,0 (INSTITUTO AOCP/2019) A estrutura típica de um compilador possui 3 elementos. Assinale a alternativa que apresenta corretamente esses elementos. Front end, interpretador, back end. Front end, analisador, back end. Front end, interpretador, base de dados. Front end, compilador, base de dados. Front end, otimizador, back end. Respondido em 29/06/2023 10:16:12 Explicação: A Compilação abrange duas grandes etapas: A Análise (front-end) e a Síntese (back-end). A etapa de Análise implica em três passos internos: Análise Léxica, Análise Sintática e Análise Semântica. Já a etapa de Síntese é composta pela Geração de Código Intermediário, Otimização e Geração de Código de Montagem. Acerto: 1,0 / 1,0 Os Meta-caracteres são caracteres especiais na especi�cação de Expressões Regulares, que aumentam muito sua expressividade. Eles podem ser quanti�cadores, de�nidores de classes de caracteres, de�nidores de lista etc.... O Meta-caracter que corresponde a seguinte classe [A-Za-z0-9] é o A ordem correta dos passos durante a compilação é: \d \W \w \c \C Respondido em 29/06/2023 10:14:30 Explicação: A resposta correta é: \w Acerto: 1,0 / 1,0 Considere a seguinte gramática S → XYZ X → aXb | ε Y → cYZcX | d Z → eZYe | f Questão3 a Questão4 a Questão5 a Levando-se em conta a necessidade de criar a tabela sintática, seriam gerados os conjuntos First e Follow de cada um dos não terminais. Qual seria o conjunto First de S? { a, d} {a, c, d} {a, c, e} {a, c, d, e} {c, d, e} Respondido em 29/06/2023 10:15:04 Explicação: Resposta correta: {a, c, d} Acerto: 1,0 / 1,0 Autômatos �nitos são equivalentes a gramáticas livres de contexto. O que são gramáticas livres de contexto (GLC)? Gramáticas que descrevem linguagens ambíguas. Gramáticas que não dependem do contexto em que a frase ou palavra é usada. Gramáticas que descrevem apenas frases curtas e simples. Gramáticas que descrevem linguagens regulares. Gramáticas que descrevem apenas linguagens formais. Respondido em 29/06/2023 10:19:36 Explicação: As gramáticas livres de contexto (GLC) são gramáticas formais que descrevem a estrutura sintática de uma linguagem sem considerar o contexto em que as palavras ou frases são usadas. Isso signi�ca que as regras da GLC determinam a estrutura sintática de uma frase independentemente do signi�cado das palavras ou do contexto em que elas são usadas. Acerto: 1,0 / 1,0 (IBGE/2019) Considerando a ciência da criação de um compilador, há vários objetos que são importantes para o processo de compilação. Esse é um componente importante para o processo e representa uma estrutura de dados que contém um registro para cada nome de variável, com campos para os atributos do nome. Assinale a alternativa que apresenta o nome desse componente. Tabela de Símbolos. Ligador (Linker). Otimizador de código. Fluxo de tokens. Árvore de Sintaxe. Respondido em 29/06/2023 10:18:56 Explicação: Questão6 a Questão7 a A Tabela de Símbolos é uma estrutura de dados utilizada em compiladores para armazenar informações sobre identi�cadores em um programa de linguagem de programação de alto nível, tais como nomes de variáveis, funções e constantes. Acerto: 1,0 / 1,0 (IBGE/2019) Linguagens de programação são notações para se descrever computações para pessoas e para máquinas. O sistema de software que faz essa tradução é denominado compilador. Um exemplo tradicional desse tipo de sistema possui fases para traduzir a entrada, que está em uma linguagem original (programa fonte), para uma linguagem destino (programa objeto). Diante do exposto, assinale a alternativa que descreve a fase do analisador semântico. Primeira fase do compilador. Etapa antes da análise léxica responsável por eliminar da árvore de sintaxe os comentários. Segunda fase do compilador. Responsável por criar a árvore de sintaxe a partir dos tokens produzidos pelo analisador léxico. Última fase do compilador. Responsável por gerar o executável através do código otimizado. Terceira fase do compilador. Utiliza a árvore de sintaxe e a tabela de símbolos para veri�car a consistência do programa fonte com a de�nição da linguagem. Quarta fase do compilador. Responsável por gerar o código intermediário após a análise sintática. Respondido em 29/06/2023 10:19:02 Explicação: O analisador semântico é uma das fases do compilador, responsável por veri�car a consistência do programa fonte com a de�nição da linguagem, utilizando a árvore de sintaxe e a tabela de símbolos. Acerto: 1,0 / 1,0 (Aeronáutica/2015) Um programa é uma sequência de instruções escritas em determinada linguagem. Assinale a alternativa que corretamente representa uma linguagem de baixo nível. C++. Pascal. Assembly. Delphi. Python. Respondido em 29/06/2023 10:21:31 Explicação: Assembly é uma linguagem de baixo nível, próxima da linguagem de máquina, que permite escrever programas com instruções que o processador é capaz de executar diretamente. Ela é usada para programação de sistemas operacionais, drivers de dispositivos e outras aplicações que precisam de acesso direto ao hardware do computador. Acerto: 1,0 / 1,0 (IDECAN/2023) Como implementador de software, você recebe a demanda de gerar um código em uma linguagem DE programação composta por mnemônicos simples com o objetivo de saber exatamente o que o Questão8 a Questão9 a Questão10 a processador está computando e quais recursos estão sendo acessados por ele. Selecione a alternativa que mostra a linguagem de programação que você deve utilizar. SQL. Assembly. PHP. HTML. JavaScript. Respondido em 29/06/2023 10:22:24 Explicação: A linguagem Assembly é composta por mnemônicos simples que representam instruções de baixo nível que o processador é capaz de executar diretamente. Ela permite que o programador saiba exatamente o que está sendo executado pelo processador, tornando-a uma escolha comum para programação de sistemas operacionais, drivers de dispositivos e outras aplicações de baixo nível.