Le moderne tecnologie informatiche sono in costante fase di miglioramento. Ogni giorno ci sono sempre più nuove tecnologie, che permettono di realizzare ciò che è stato definito di recente come finzione. Anche le lingue, sia umane che informatiche, sono soggette a forti cambiamenti. In questo articolo ti spiegheremo in dettaglio di cosa si tratta - il compilatore, come lavorarci, per cosa è stato creato e dove può essere trovato ora. L'articolo è consigliato non solo agli utenti alle prime armi del sistema operativo Windows, ma anche ai programmatori che desiderano conoscere le conoscenze nascoste del loro sistema.
Per cominciare vale la pena di astrarre, perché la programmazione non è solo la guida di alcune parole chiave nella macchina, ma anche azioni attentamente studiate relative ai componenti del sistema. Inizialmente c'era un codice binario, quindi i programmatori hanno creato un linguaggio di programmazione semi-computer - assemblatore, ma per cosa?
Immagina di dover contare ogni bit sulla calcolatrice del programmatore, quindi collegarlo correttamente e molto altro ancora. In assembler, tutto è diventato un po 'più semplice, ma ancora molto, molto difficile rispetto ai moderni linguaggi di programmazione, ad esempio il C ++, che è definito uno dei più complessi, ma sarà discusso poco dopo.
Nel linguaggio assembly, tutto viene fatto grazie ai registri del processore: divisione, moltiplicazione, spostamento del valore dal punto A al punto B, ecc. Il suo problema principale è che è ancora a metà macchina, ma è ancora leggibile dall'uomo, in contrasto con i bit caoticamente sparsi . Un altro inconveniente era il numero limitato di questi registri.
Negli anni '80 decisero di inventare un linguaggio di programmazione, grazie al quale sarebbe stato facile e semplice scrivere un sistema operativo. Ecco come è apparso C e il compilatore GCC C da GNU. Se stai usando Linux, dovresti aver visto i prodotti di questa azienda. A proposito, l'assemblatore è ancora usato oggi, perché alcuni compilatori creano file oggetto con codice binario, mentre altri sono eseguibili - con codice in assemblatore. Tutto dipende dalla piattaforma di sviluppo.
Un compilatore moderno ha i seguenti programmi in sé:
Ci sono anche 2 tipi di progetto compilati dal compilatore: dinamico e statico. Nella prima vengono aggiunti solo i file di progetto necessari, nonostante l'ambiente di sviluppo, e nel secondo caso, tutti in un heap (connesso, ovviamente). Quindi, da questo possiamo già dire che il compilatore è un intero elenco di programmi per la raccolta e l'elaborazione delle informazioni in forma chiara e logica per un computer. Quindi guardiamo come è iniziato tutto.
Potreste essere sorpresi, ma per la prima volta l'oggetto del nostro articolo (allora è stato anche chiamato il traduttore) è apparso nel 1954 all'Istituto, specializzato in matematica applicata. Non includeva una serie così ampia di programmi come è ora, ma era ancora una svolta nella scienza in quel momento. Non c'era nessun debager, quindi le persone dovevano fare tutto alla lettera con le loro mani e usando la matematica standard e discreta per scoprire se il computer elettronico avesse ottenuto il risultato giusto.
Se sei un programmatore abbastanza intelligente, allora sarai in grado di completare questo compito. È vero, ci vorrà un sacco di tempo e impegno. A proposito, prima c'era persino una tale professione - un programmatore-linker. È solo nei nuovi linguaggi di programmazione che tutto è automatizzato, e prima che le persone dovevano collegare pezzi di codice Make con i file. A proposito, ora alcuni progetti su Linux possono essere raccolti usando questi stessi Makefile, è sufficiente specificare le loro dipendenze manualmente.
Dopo aver raccolto il codice, il linker ha ceduto il lavoro al computer per l'elaborazione, dove alla fine ha ricevuto il codice binario finito.
Come puoi vedere, il compilatore non è solo un programma, ma anche gli sforzi di molte persone. E loro, come sosteneva Henry Ford, stanno cercando di automatizzare ogni processo.
Quindi, molti dei lettori sanno che ci sono molte lingue morte, ma anche più vive, cioè quelle che aggiornano la loro libreria standard almeno una volta all'anno. Come abbiamo detto, è stata creata la C del 1980: è stata una svolta. Molti dei nostri padri adorano ancora questa lingua, ma che ne è ora?
Vive e prospera in un nuovo corpo, se posso dirlo. L'erede è C ++ di diritto, sebbene al suo creatore sia vietato scrivere codice simile a C su di esso, molti programmatori lo ignorano e lo fanno, ma perché è consentita una violazione così grossolana delle regole?
Il tuo percorso sarà spinoso - vale la pena conoscere prima di tutto. Per iniziare a lavorare con un linguaggio, ad esempio, se è C, sarà sicuramente necessario familiarizzare con il compilatore C. E se non si fa amicizia con esso e non si capisce la sua logica, allora i progetti saranno in ritardo e in volo uno per uno.
Cerca di leggere il maggior numero possibile di libri non solo sulle basi della programmazione, ma anche sulla storia della creazione di lingue, così inizierai sicuramente a capire l'essenza stessa del processo. Cerca di combinare pratica e nuove conoscenze, quindi tutto è ricordato molto più velocemente. Inoltre, cerca di portare il tuo inglese ad almeno un livello medio, altrimenti sarà molto difficile per te navigare attraverso l'IDE.
Speriamo che, dopo aver letto questo articolo, capisci che questo è un compilatore, come funziona, perché è stato creato e di chi hai ancora bisogno. Vale la pena ricordare che la cosa più importante per un programmatore è capire la situazione, capire i principi di base, quindi speriamo davvero che l'articolo ti abbia aiutato in questo.