I Linguaggi
Di
Luca Brugnone
13/11/2007
Linguaggio naturale
Linguaggio utilizzato
dall’uomo,composto da parole.
Lontano dalla macchina.
Linguaggio macchina
Il linguaggio macchina è l’unico linguaggio comprensibile ai calcolatori,infatti
viene utilizzato per scrivere i programmi eseguibili per computer.
Può essere definito un linguaggio di programmazione, anche se questa
espressione è utilizzata per indicare i linguaggi di alto livello con cui si scrivono
programmi non direttamente eseguibili, ma che richiedono una traduzione in
linguaggio macchina per mezzo di un compilatore. La CPU è il componente che
è in grado di eseguire i programmi scritti in linguaggio macchina. Il linguaggio
macchina è basato su un alfabeto detto binario perché comprende due soli
simboli, 0 e 1. Un simbolo di questo alfabeto viene detto bit.
Ogni modello di processore è in grado di comprendere un proprio linguaggio
macchina.
Come nel linguaggio naturale, nel linguaggio macchina i simboli dell'alfabeto
utilizzato (1 e 0) sono organizzati in "parole" che a loro volta costituiscono
"frasi".
Le frasi del linguaggio macchina sono dette istruzioni,ogni istruzione ordina al
processore di eseguire un'azione all'interno del computer.
Assembly
L'assembly ha lo scopo generale di consentire al programmatore di
ignorare il formato binario del linguaggio macchina.
Ogni codice operativo del linguaggio macchina viene sostituito,
nell'assembly ,da una sequenza di caratteri che lo rappresenta, per
esempio, il codiceoperativo per la somma viene trascritto come ADD.
L'assembly è un linguaggio ideale per chi desidera sfruttare al meglio
le potenzialità del computer.
Programmando in Assembly si ha il controllo completo del computer,di
ogni singolo bit e di ogni singolo registro.
Purtroppo programmare in assembly non è facile,un banale errore può
causare il crash del sistema.
Per usare questo linguaggio è necessario conoscere l'hardware e la
struttura della CPU.
Il programma scritto in assembly non può essere eseguito
direttamente dal processore,esso deve essere tradotto informa binaria,
usando un compilatore detto assembler.
Linguaggi ad alto livello
Un linguaggio di programmazione ad alto livello è un linguaggio di
programmazione direttamente eseguibile da un computer; i programmi
scritti in un linguaggio ad alto livello possono essere eseguiti tramite
un compilatore, un interprete, o da una combinazione di questi
strumenti.
L'idea di fondo è che i programmi ad alto livello possono essere
ricondotti a programmi in linguaggio macchina in modo automatico.
Quest'idea rivoluzionaria fu introdotta in informatica nella seconda
metà degli anni cinquanta,grazie al lavoro di John Backus presso
IBM,dove fu sviluppato il primo compilatore per il linguaggio FORTRAN
(in seguito, Backus ricevette per questo motivo il premio Turing).
Un linguaggio di programmazione può essere descritto "più ad alto
livello" di un altro se si discosta in modo più radicale dalle
caratteristiche tipiche del linguaggio macchina.
I linguaggi ad alto livello più diffusi sono:
Fortran,Cobol,Java,C##,pascal,basic.
Fortran
Il Fortran è un linguaggio compilato progettato
principalmente per il calcolo scientifico e numerico.
Ideato da John Backus,esso è uno dei primi
linguaggi di programmazione essendo stato
sviluppato a partire dal 1954.
Il suo nome deriva da Formula Translation (o
Translator), cioè traduzione/traduttore di formule
(matematiche) in algoritmi computazionali.
Ecco un esempio di Hello world:
PROGRAM HELLO
PRINT *, 'Hello, world'
END
Cobol
Il COBOL è un linguaggio ad alto livello di tipo procedurale, orientato allo sviluppo di applicazioni commerciali e per
l'elaborazione di grossi
volumi di dati. Le istruzioni, molto simili a frasi della lingua inglese, sono organizzate in uno schema dalla struttura rigida,
composto di
sezioni e paragrafi. Caratteristica precipua dei programmi scritti in COBOL è la struttura sempre formata da quattro
DIVISION, (divise a loro
volta in SECTION), che devono sempre essere collocate nel seguente ordine:
IDENTIFICATION DIVISION: contiene i dati identificativi del programma (nome, autore, data ecc.)
ENVIRONMENT DIVISION: contiene i dati relativi alle macchine su cui è stato sviluppato e su cui girerà il programma.
DATA DIVISION: Contiene la struttura dei dati che è organizzata in modo gerarchico.
PROCEDURE DIVISION: Contiene le istruzioni.
Un esempio di Hello world:
000100 IDENTIFICATION DIVISION.
000200 PROGRAM-ID. HELLOWORLD.
000300 DATE-WRITTEN. 02/05/96
21:04.
000400*
AUTHOR BRIAN COLLINS
000500 ENVIRONMENT DIVISION.
000600 CONFIGURATION SECTION.
000700 SOURCE-COMPUTER. RM-COBOL.
000800 OBJECT-COMPUTER. RM-COBOL.
000900
001000 DATA DIVISION.
001100 FILE SECTION.
001200
100000 PROCEDURE DIVISION.
100100
100200 MAIN-LOGIC SECTION.
100300 BEGIN.
100400 DISPLAY " " LINE 1 POSITION 1 ERASE EOS.
100500 DISPLAY "HELLO, WORLD." LINE 15 POSITION 10.
100600 STOP RUN.
100700 MAIN-LOGIC-EXIT.
100800 EXIT.
Java
Il linguaggio Java è un linguaggio di programmazione orientato agli oggetti, derivato dal C++ (e quindi
indirettamente dal C) e creato da James Gosling e altri ingegneri di Sun Microsystems. Il gruppo iniziò
a
lavorare nel 1991, il linguaggio inizialmente si chiamava Oak.
Il nome fu successivamente cambiato in Java a causa di un problema di copyright (il linguaggio di
programmazione Oak esisteva già nel 1991). Java fu annunciato ufficialmente il 23 maggio 1995 a
SunWorld.
Java venne creato per soddisfare quattro scopi:
1. essere orientato agli oggetti
2. essere indipendente dalla piattaforma
3. contenere strumenti e librerie per il networking
4. essere progettato per eseguire codice da sorgenti remote in modo sicuro
Per facilitare il passaggio a questo linguaggio per i programmatori old-fashioned legati in particolare a
linguaggi come il C la sintassi di base è stata mantenuta pressoché identica.
Esempio di Hello World:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
C##
Il C## (si pronuncia C sharp, sharp in inglese significa "in gamba" o più
semplicemente diesis) è un linguaggio di programmazione sviluppato da
Microsoft all'interno dell'iniziativa .NET, e successivamente approvato come
standard ECMA. La sintassi del C# prende spunto da quella del Delphi (hanno il
medesimo autore), del C++, da quella di Java ed a Visual Basic per gli strumenti
di programmazione visuale e per la sua semplicità (meno simbolismo rispetto a
C++, meno elementi decorativi rispetto a Java).
Esempio di Hello World:
using System;
class HelloWorldApp
{
public static void Main()
{
Console.WriteLine("Hello World");
}
}
Scarica

Scarica la presentazione!