Estratto del documento

Linguaggi di programmazione di basso livello e di alto livello

I linguaggi di programmazione differiscono dai linguaggi naturali per una loro minore espressività. In generale, sono semplici e poveri (poche regole e precisione: parole chiave) ma privi di ambiguità. Non è facile classificare i linguaggi di programmazione, ma una prima distinzione, che indirettamente abbiamo già proposto negli esempi precedenti, è quella tra i linguaggi di basso livello e i linguaggi di alto livello.

Linguaggi di basso livello

Ogni processore ha un proprio linguaggio articolato in un insieme di istruzioni macchina i cui codici numerici sono interpretati come operazioni elementari (per esempio, il caricamento di un registro interno al processore con un numero, oppure la somma tra il valore contenuto in una locazione di memoria e il valore contenuto in un registro del processore). Questo tipo di linguaggio, molto distante dall’usuale modo di ragionare dell’uomo, comporta un lavoro complesso per l’implementazione degli algoritmi. Inizialmente, questo era l’unico modo per programmare un computer: è per migliorare questo stato di cose che si realizzarono linguaggi intermedi basati su una codifica simbolica delle istruzioni macchina.

Un programma codificato mediante un linguaggio diverso dal linguaggio delle istruzioni macchina non è più direttamente eseguibile dal processore del computer: richiede una fase di traduzione del codice originale, il programma sorgente, in una sequenza di istruzioni del linguaggio macchina, il programma oggetto o eseguibile.

Assembly

Il primo linguaggio di questo tipo è stato l’Assembly, in cui per ogni singola istruzione macchina viene usato uno specifico codice mnemonico: anche se garantiva una relativa semplificazione del lavoro, il livello di riferimento era ancora quello del processore del computer. La necessità di astrarre l’implementazione degli algoritmi dalla logica di funzionamento dei processori ha portato ai cosiddetti linguaggi di alto livello, orientati non più al funzionamento della macchina, ma alla risoluzione di problemi.

Linguaggi di alto livello

Questi linguaggi, essendo virtualmente indipendenti da uno specifico processore con le sue particolari istruzioni, hanno consentito di scrivere software portatile, permettendo l’utilizzo di uno stesso codice sorgente su computer di tipo diverso.

Classificazione dei linguaggi di programmazione di alto livello

Una ulteriore classificazione dei linguaggi di programmazione di alto livello è quella tra problem-oriented, ovvero linguaggi realizzati per la risoluzione di problemi in specifiche aree applicative, e i general-purpose, ovvero linguaggi adatti per la risoluzione di una vasta gamma di problemi.

Anteprima
Vedrai una selezione di 1 pagina su 4
linguaggi di basso livello e di alto livello Pag. 1
1 su 4
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher f3874de6c1206fe40aa32376201566557615d103 di informazioni apprese con la frequenza delle lezioni di Informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università del Salento o del prof Scienze matematiche Prof.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community