Diferença entre o depurador e o compilador

Diferença entre o depurador e o compilador
Diferença entre o depurador e o compilador

Vídeo: Diferença entre o depurador e o compilador

Vídeo: Diferença entre o depurador e o compilador
Vídeo: O que é cloud computing e como funciona? (Computação em Nuvem) 2024, Julho
Anonim

Depurador vs Compilador

Em geral, compilador é um programa de computador que lê um programa escrito em uma linguagem, que é chamada de linguagem de origem, e o traduz para outra linguagem, que é chamada de linguagem de destino. Tradicionalmente, a linguagem de origem era uma linguagem de alto nível, como C++, e a linguagem de destino era uma linguagem de baixo nível, como a linguagem assembly. Debugger é um programa de computador que é usado para encontrar bugs/erros em outros programas. O depurador permite que um programador pare a execução de um programa em um ponto e examine as características, como valores de variáveis naquele ponto.

O que é um Depurador?

Debugger é um programa de computador que é usado para encontrar bugs/erros em outros programas. Debugger permite executar um programa e inspecionar cada passo na execução do programa. Também permite interromper a execução do programa em algum ponto e alterar alguns valores de variáveis e, em seguida, continuar a execução. Todos esses recursos são fornecidos para ajudar o programador a certificar-se de que seu programa está se comportando corretamente e para ajudar na identificação de bugs no código. A maioria dos depuradores fornece a capacidade de executar um programa passo a passo (também chamado de etapa única), pausando para examinar o estado atual do programa, fornecendo um ponto de interrupção e rastreando valores de variáveis. Alguns depuradores avançados permitem que o programador ignore um local que cause uma falha ou um erro lógico no código e continue a execução de um local diferente. Alguns dos depuradores populares são GNU Debugger (GDB), Microsoft Visual Studio Debugger, etc.

O que é um compilador?

Compilador é um programa de computador que lê um programa escrito em um idioma, que é chamado de idioma de origem, e o traduz para outro idioma, chamado de idioma de destino. Na maioria das vezes, o idioma de origem é um idioma de alto nível e o idioma de destino é um idioma de baixo nível. Assim, em geral os compiladores podem ser vistos como tradutores que traduzem de um idioma para outro. Além disso, os compiladores realizam algumas otimizações no código. Um compilador típico é composto de vários componentes principais. O primeiro componente é o scanner (também conhecido como analisador léxico). O scanner lê o programa e o converte em uma sequência de tokens. O segundo componente é o analisador. Ele converte a string de tokens em uma árvore de análise sintática (ou uma árvore de sintaxe abstrata), que captura a estrutura sintática do programa. O próximo componente são as rotinas semânticas que interpretam a semântica da estrutura sintática. Isso é seguido por otimizações de código e geração de código final.

Qual é a diferença entre um depurador e um compilador?

Debugger é um programa de computador usado para encontrar bugs/erros em outros programas, enquanto o compilador é um programa de computador que lê um programa escrito em um idioma e o traduz para outro idioma. Os compiladores também têm a capacidade de detectar erros de sintaxe e outros erros de tempo de compilação, mas os depuradores fornecem mais recursos (como monitorar a memória) para detectar bugs em programas. Esses dois são dois programas diferentes, mas na maioria das vezes, um depurador e um compilador são integrados em um único pacote.

Recomendado: