2 . Paradigmi di programmazione Versione 2.0 – Novembre 2020
 Schematizzione del processo evolutivo dei linguaggi di programmazione
 I linguaggi di programmazione si sono evoluti di pari passo con l ’ evoluzione tecnologica delle macchine e per questo si parla di generazione di linguaggi di programmazione ( vedi schema successivo )
 Facilità e velocità di programmazione
 LINGUAGGIO MACCHINA ( Linguaggi di Progr . di 1 ° generazione )
 LINGUAGGI ASSEMBLY ( Linguaggi di Progr . di 2 ° generazione )
 LINGUAGGI AD ALTO LIVELLO ( Linguaggi di Progr . di 3 ° generazione )
 BASSO LIVELLO
 Linguaggio influenzato completamente dall ’ hardware della macchina su cui doveva operare . Per realizzare i programmi era necessario utilizzare esclusivamente i simboli binari ‘ 0 ’ ed ‘ 1 ’ e conoscere la CPU della macchina sulla quale si stava programmando . Tale operazione era molto complessa e venivano commessi molti errori anche per istruzioni in realtà banali . Le operazioni possibili erano solo quelle che la macchina poteva svolgere direttamente .
 Linguaggi detti “ machine oriented ” ( orientati alla macchina ). Tali linguaggi introdussero per la prima volta la presenza di un programma traduttore ( programma assembler o assemblatore ) in codice binario delle istruzioni da eseguire , legato all ’ hardware della macchina su cui si operava . In questo caso a disposizione del programmatore venivano messe per la prima volta dei “ comandi ” più vicini al suo modo di pensare ( ADD , JMP , etc .) che il programma assemblatore si preoccupava di tradurre in codice binario comprensibile dalla CPU .
 Secondo questi linguaggi un programma è costituito da un insieme di istruzioni slegate dal funzionamento fisico della macchina capaci però di modificarne il contenuto della memoria . Sono linguaggi “ problem-oriented ” ossia orientati al problema e vengono suddivisi a seconda del modello di programmazione ( paradigma ) utilizzato . ( Qui ci sono quasi tutti i linguaggi di programmazione più noti )
 LINGUAGGI AD ALTISSIMO LIVELLO ( Linguaggi di Progr . di 4 ° generazione )
 Sono i linguaggi UHLL ( ultra high level language ) ed hanno la caratteristica di consentire all ’ utente di risolvere problemi utilizzando un linguaggio simile a quello utilizzato nella propria attività . ( Es . fogli elettronici e linguaggi per la manipolazione delle basi dati come il linguaggio SQL )
 LINGUAGGI AD ALTISSIMO LIVELLO ( Linguaggi di Progr . di 5 ° generazione )
 Si stanno studiando e stanno cominciando ad essere utilizzati nel campo dell ’ applicazione dell ’ intelligenza artificiale che si propone la risoluzione di problemi ritenuti di competenza dell ’ intelletto umano ( sistemi esperti )
 ALTO LIVELLO
 Efficienza del programma
 Autore : Rio Chierego ( email : riochierego @ libero . it - sito web : www . riochierego . it ) Pag . 4