Tipi di linguaggi informatici
Il linguaggio del computer o linguaggio di programmazione è una sintassi codificata utilizzata dai programmatori di computer per comunicare con un computer. È l'unico linguaggio che i computer, i programmi software e l'hardware del computer possono capire. Il linguaggio informatico stabilisce un flusso di comunicazione tra i programmi software. Il linguaggio consente all'utente del computer di dettare i comandi che il computer deve eseguire per elaborare i dati. Il linguaggio del computer è disponibile in vari tipi che utilizzano diversi insiemi di sintassi.
Linguaggio macchina
Il linguaggio macchina o codice macchina è il linguaggio nativo compreso direttamente dall'unità di elaborazione centrale del computer o dalla CPU. Questo tipo di linguaggio informatico non è di facile comprensione, poiché utilizza solo un sistema binario, un elemento di notazioni contenente solo una serie di numeri composta da uno e zero, per produrre comandi. Il processore del computer deve convertire i linguaggi di alto livello in questo linguaggio prima di poter eseguire un programma o eseguire un comando definito dall'utente. Per convertire un determinato linguaggio in codice macchina, il processore del computer ha bisogno di un compilatore, un programma che converte un codice sorgente scritto in una lingua in una sintassi di lingua diversa. Il compilatore genera un file binario, o file eseguibile, che verrà eseguito dalla CPU. Ogni processore del computer ha il proprio set di codici macchina. Il codice macchina determinerà cosa dovrebbe fare il processore del computer e come dovrebbe farlo.
Linguaggio a livello di assembly
Uno studio all'inizio degli anni '50 ha portato allo sviluppo di linguaggi di basso livello o linguaggio a livello di assemblaggio. Considerato anche come linguaggio di seconda generazione, Assembly Level Language è un insieme di codici che possono essere eseguiti direttamente sul processore del computer. Questo tipo di linguaggio è più appropriato per la scrittura di sistemi operativi e la manutenzione di applicazioni desktop. Consente al programmatore di eseguire diverse attività come l'accesso al registro, la gestione della memoria e la corrispondenza del ciclo di clock. Con il linguaggio a livello di assembly, è più facile per un programmatore definire i comandi perché ha la prerogativa quando si tratta di nominare le variabili. Tuttavia, questa lingua non è flessibile perché l'utente non può riutilizzare l'insieme di codici scritti utilizzando questa lingua. Non è così esplicativo rispetto alle altre sue controparti. L'utente deve crittografare questo linguaggio nel linguaggio macchina affinché il computer elabori i comandi scritti dal programmatore.
Linguaggio di alto livello
Lo sviluppo di linguaggi di alto livello è avvenuto quando i programmatori di computer hanno iniziato ad avere problemi per la crescente mancanza di portabilità del computer. Le lingue di alto livello ignorano i dettagli non importanti che si trovano nelle lingue di basso livello. Molti programmatori considerano il linguaggio di alto livello come una soluzione importante ai problemi causati dai linguaggi informatici a causa della sua facilità d'uso e della bassa tendenza a produrre bug. I programmatori spesso si riferiscono ai linguaggi di alto livello come linguaggi di livello medio che utilizzano solo i concetti di astrazione e costrutti fino all'estremo.