Logo Passei Direto
Buscar

Ferramentas de estudo

Questões resolvidas

A análise semântica tem o objetivo de verificar a validade das declarações e operações contidas em um código de alto nível. Esta análise, entre outras coisas, verifica o tipo de cada declaração, operação, operando e variável em busca de inconsistências.
Com isso em mente marque a alternativa incorreta entre as opções a seguir:
A A análise semântica é o último grande bloco antes da geração do código intermediário;
B A análise semântica indica o tipo das variáveis por meio de etiquetas colocadas na árvore sintática;
C Se for necessário, caberá ao processo de análise semântica a marcação das conversões automáticas de tipos;
D A determinação dos tipos depende do escopo da variável;
E Podemos chamar de árvore semântica a árvore sintática após o processo de análise semântica.

Antes da geração do código executável, o programa que será executado em uma determinada arquitetura, o compilador realiza uma otimização de código específica para a arquitetura visada.
Considerando esta última fase, qual das afirmacoes a seguir está errada.
A É na fase de geração de código executável, logo após a otimização que o código é encapsulado no formato exigido pelo sistema operacional.
B A otimização específica para uma arquitetura permite que o código executável utilize da melhor forma possível todos os recursos da máquina.
C Ainda que o código seja otimizado várias vezes e de formas diferentes, não é possível afirmar que o programa resultante é perfeito.
D O código executável, gerado na última fase da compilação contém a tabela de símbolos criada durante todo o processo de compilação.
E No processo de compilação existe pelo menos uma fase de eliminação de código morto.

O processo de verificação de tipos torna-se mais importante quando consideramos que, em muitas linguagens de programação, existem tipos complexos e tipos compostos.
Com relação a verificação de tipos, qual das afirmativas a seguir é incorreta?
A A checagem estática de tipos é feita em tempo de compilação, como é o caso da linguagem C, quando compilada;
B A checagem de tipos dinâmica é feita em tempo de execução, como é o caso da linguagem PHP, quando interpretada;
C Linguagens de programação podem exigir a definição de tipo para cada variável ou estrutura de dados composta ou, podem determinar estes tipos em tempo de execução, dependendo de escolhas realizadas na definição da linguagem;
D A definição de tipos complexos, como listas e pilhas, independe da linguagem de programação e, como tal, estes tipos podem ser verificados por qualquer analisador semântico;
E Ainda que tipos complexos e compostos tornem o processo de análise semântica mais complexo e demorado, as funcionalidades que são agregadas as linguagens de programação por estes constructors torna sua utilização indispensável.

No módulo de análise sintática, utilizamos a definição de uma gramática livre de contexto, como base para o processo de análise.
Entre as afirmacoes a seguir indique aquela que é verdadeira.
A Erros de compatibilidade de tipos não são importantes para o analisador semântico;
B A verificação de variáveis e declarações em relação ao escopo de cada bloco de código é função do analisador sintático;
C A duplicidade de declarações de variáveis faz parte das funções do analisador semântico;
D Sem o analisador semântico o compilador não seria capaz de detectar nenhum erro de digitação;
E A tabela de símbolos, muito importante nas análises léxica e sintática não tem função na análise semântica.

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

A análise semântica tem o objetivo de verificar a validade das declarações e operações contidas em um código de alto nível. Esta análise, entre outras coisas, verifica o tipo de cada declaração, operação, operando e variável em busca de inconsistências.
Com isso em mente marque a alternativa incorreta entre as opções a seguir:
A A análise semântica é o último grande bloco antes da geração do código intermediário;
B A análise semântica indica o tipo das variáveis por meio de etiquetas colocadas na árvore sintática;
C Se for necessário, caberá ao processo de análise semântica a marcação das conversões automáticas de tipos;
D A determinação dos tipos depende do escopo da variável;
E Podemos chamar de árvore semântica a árvore sintática após o processo de análise semântica.

Antes da geração do código executável, o programa que será executado em uma determinada arquitetura, o compilador realiza uma otimização de código específica para a arquitetura visada.
Considerando esta última fase, qual das afirmacoes a seguir está errada.
A É na fase de geração de código executável, logo após a otimização que o código é encapsulado no formato exigido pelo sistema operacional.
B A otimização específica para uma arquitetura permite que o código executável utilize da melhor forma possível todos os recursos da máquina.
C Ainda que o código seja otimizado várias vezes e de formas diferentes, não é possível afirmar que o programa resultante é perfeito.
D O código executável, gerado na última fase da compilação contém a tabela de símbolos criada durante todo o processo de compilação.
E No processo de compilação existe pelo menos uma fase de eliminação de código morto.

O processo de verificação de tipos torna-se mais importante quando consideramos que, em muitas linguagens de programação, existem tipos complexos e tipos compostos.
Com relação a verificação de tipos, qual das afirmativas a seguir é incorreta?
A A checagem estática de tipos é feita em tempo de compilação, como é o caso da linguagem C, quando compilada;
B A checagem de tipos dinâmica é feita em tempo de execução, como é o caso da linguagem PHP, quando interpretada;
C Linguagens de programação podem exigir a definição de tipo para cada variável ou estrutura de dados composta ou, podem determinar estes tipos em tempo de execução, dependendo de escolhas realizadas na definição da linguagem;
D A definição de tipos complexos, como listas e pilhas, independe da linguagem de programação e, como tal, estes tipos podem ser verificados por qualquer analisador semântico;
E Ainda que tipos complexos e compostos tornem o processo de análise semântica mais complexo e demorado, as funcionalidades que são agregadas as linguagens de programação por estes constructors torna sua utilização indispensável.

No módulo de análise sintática, utilizamos a definição de uma gramática livre de contexto, como base para o processo de análise.
Entre as afirmacoes a seguir indique aquela que é verdadeira.
A Erros de compatibilidade de tipos não são importantes para o analisador semântico;
B A verificação de variáveis e declarações em relação ao escopo de cada bloco de código é função do analisador sintático;
C A duplicidade de declarações de variáveis faz parte das funções do analisador semântico;
D Sem o analisador semântico o compilador não seria capaz de detectar nenhum erro de digitação;
E A tabela de símbolos, muito importante nas análises léxica e sintática não tem função na análise semântica.

Mais conteúdos dessa disciplina