No modelo geral de um compilador, não há um banco de dados permanente .
Aqui está o porquê:
*
Objetivo do compilador: Os compiladores foram projetados para traduzir o código fonte em código da máquina (ou código intermediário) para uma plataforma específica. Eles não armazenam dados persistentemente.
*
Estruturas de dados temporários: Um compilador usa uma variedade de estruturas de dados, como tabelas de símbolos, representação intermediária de código e variáveis temporárias para processar o código -fonte. Tudo isso é
temporário e existe apenas durante o processo de compilação.
*
Sistemas de banco de dados: Os bancos de dados são sistemas especializados para armazenar e recuperar dados em períodos prolongados. Eles são separados do compilador e não estão diretamente envolvidos no processo de compilação.
Exemplo: Imagine que você está compilando um programa C ++. O compilador lê seu código -fonte, analisa, gera código intermediário e, finalmente, produz um arquivo executável. Todas as informações que o compilador usa (como nomes de variáveis, tipos, definições de função) são armazenados em estruturas de dados temporárias na memória do compilador. Depois que a compilação é concluída, essas estruturas são descartadas.
Nota: Algumas técnicas avançadas de otimização do compilador podem usar arquivos ou bancos de dados temporários para armazenar resultados intermediários. Geralmente, isso é para melhorar a eficiência e o desempenho, mas não é um requisito fundamental para todos os compiladores.