Código fonte e Compiladores

 

Código fonte e Compiladores


Bom, até o presente momento muitos de vocês trabalharam a construção de algoritmos e usaram um interpretador de códigos para conferirem se a lógica de vocês estava certa testando o algoritmo. 

A Linguagem C possui uma sintaxe e uma semântica própria. A Sintaxe é a forma de como escrevemos corretamente um comando e a semântica é a lógica ao qual a sintaxe se refere. Dessa forma escrevemos um programa através da escrita correta dos comandos e do significado que estes terão (lógica).

Ao escrevermos um programa estamos na realidade criando o que os autores chamam de Código Fonte do programa. Ou seja, os comandos escritos em certa ordem e lógica, que ao passarem por um interpretador de códigos se transformam em programa de computador, software ou sistema.

Resumindo o processo de criação de um software:

Você cria um arquivo contendo as instruções na Linguagem C seguindo a sintaxe e semântica da linguagem assim como a sua lógica (algoritmo desejado). Esse arquivo que contém os códigos em Linguagem C será chamado de Código Fonte, que é carregado em um programa do tipo compilador, para então verificar quanto a SINTAXE e o transformará em arquivos de programas (normalmente arquivos do tipo .EXE ou .COM). Os arquivos de programa estarão codificados na linguagem binária, linguagem que o computador pode executar diretamente e, ao serem executados, os arquivos de programas trarão as funcionalidades previstas no seu algoritmo, sendo assim denominado de software.

Duas coisas interessantes a destacar aqui:

1. O Código Fonte não é um software.

2. Os arquivos gerados após a compilação são arquivos contendo “0” e “1”, portanto não dá para saber exatamente qual é o código fonte deste arquivo.

E o que isso tem de realmente interessante? Bom, o fato de que não conseguimos descobrir a lógica de um programa através dos seus arquivos compilados. Nesse ponto, vamos destacar os softwares livres, que trazem além dos seus arquivos executáveis.

Fonte: Linguagem da programação I, UFERSA, Macedo, Luiz