15.4 I linguaggi di programmazione

I linguaggi di programmazione si possono dividere in due grandi categorie dipendentemente dal livello di astrazione da essi fornito. I linguaggi di basso livello sono quelli più vicino alla logica della macchina, non utilizzano i costrutti della programmazione strutturata e fanno uso di registri e indirizzi di memoria e pertanto sono dipendenti dalla piattaforma considerata. L’unico linguaggio di programmazione di basso livello è l’assembly (che varia dipendentemente dalla CPU considerata). Per queste caratteristiche i linguaggi di basso livello permettono il massimo controllo sulla macchina e quini permettono di sfruttarne appieno tutte le potenzialità, a scapito della facilità di scrittura del codice.

I linguaggi ad alto livello si avvicinano più alla logica umana, astraendo dai meccanismi logici della macchina: fanno uso di codici mnemonici per l’identificazione dei dati ed utilizzano i costrutti della programmazione strutturata. Per questo i linguaggi di alto livello sono generalmente meno performanti in termini di velocità di esecuzione rispetto agli analoghi sviluppati in un linguaggio di programmazione a basso livello.

Esitono anche linguaggi di alto livello che permettono l’accesso agli indirizzi di memoria ed ai registri della CPU. Questo è il caso del C (e C++), che per questo può essere considerato un linguaggio ad alto livello con caratteristiche di basso livello che lo rendono molto potente.

Di seguito sarà fatta una breve panoramica sulle caratterisitiche dei linguaggi di programmazione più utilizzati.


  15.4.1 La memorizzazione dei dati
   15.4.1.1 Le costanti e le variabili
   15.4.1.2 Le strutture dati
   15.4.1.3 I vettori
   15.4.1.4 L’allocazione dinamica della memoria
   15.4.1.5 Le liste concatenate
   15.4.1.6 Le pile
   15.4.1.7 Le code
  15.4.2 Le funzioni
  15.4.3 I commenti
  15.4.4 L’indentazione del codice
  15.4.5 Assembly
   15.4.5.1 Lo stack
  15.4.6 C
  15.4.7 C++
  15.4.8 Java
  15.4.9 Perl
  15.4.10 Phyton