ASM I linguaggi di programmazione: Assembly

Stato
Discussione chiusa ad ulteriori risposte.

Elysium

Bannato
14 Giugno 2010
320
19
33
134

hJ3sFzy.png

Cos'è l'Assembly
Linguaggio di programmazione le cui direttive sono composte da stringhe omologhe corrispondenti in modo biunivoco alle istruzioni elementari dell’unità di elaborazione centrale (CPU, Central processing unit) di un calcolatore elettronico.
Questo linguaggio si pone dunque a un livello mediano tra un linguaggio di alto livello (scritto con un linguaggio vicino a quello naturale) e il linguaggio macchina (composto da una sequenza logica di 0 e 1 chiari alla CPU).
In realtà, il nome giusto di questo linguaggio risulta essere ‘Assembly’, chiamatosi assembler (assemblatore) il programma in grado di eseguire la traduzione da linguaggio Assembly a linguaggio macchina.
Questo comporta sia la traduzione di tutte le istruzioni scritte in Assembly sia la decodifica di tutte le locazioni di memoria coinvolte nel programma.
Infatti, perché qualunque direttiva simbolica (per es., LOAD, ADD o STORE) scritta in linguaggio assemblatore viene cambiata precisamente in un’istruzione binaria, in linguaggio macchina occorre un programma, l’assemblatore, che trasforma l’intero codice sorgente in un codice leggibile dalla macchina chiamato codice oggetto, realizzato il quale le direttive possono essere caricate in memoria ed eseguite dal processore.
I primi assemblatori comparvero negli anni '50 del secolo passato come superamento della programmazione direttamente in linguaggio macchina (detto linguaggio di prima generazione), la quale dichiarava problemi legati alla scarsa leggibilità delle sue direttive, all’utilizzo di locazioni di memoria esclusivamente numeriche (e quindi non rinominabili), alla complessità di modifica (modificare un’istruzione vuol dire modificare tutte le altre), alle difficoltà legate alla gestione dei dati.
Grazie all’avviamento del linguaggio assemblatore (chiamato linguaggio di 2a generazione), affinché usufruiva di codici e indirizzi di memoria simbolici anziché numerici e la possibilità di scrivere pseudo-operazioni (per es., per la generazione di dati), si raggiunse un ambiente di programmazione più orientato all’utente.

Caratteristiche, perché utilizzarlo
1) Velocità: I programmi realizzati in Assembly sono molto più veloci di quelli realizzati con gli HLLs (High Level Languages - Linguaggi di alto livello, tipo C, VB, Pascal etc..).
2)Spazio: i programmi realizzati in Assembly, utilizzano la metà di quelli in HLL.
3)Capacità: Si possono fare cose in Assembly che gli HLLs possono solo sognare.
4)Conoscenza: La conoscenza dell'Assembly ti aiuterà anche con gli HLLs.
Quindi il linguaggio Assembly è all'altezza degli sforzi che starete per compiere, e forse, dopo averlo conosciuto, lo utilizzerete più di quanto avreste mai pensato.

Cenni storici
L'Assembly è stato creato verso i primi tempi dell'era informatica, quando quest'ambito stava cominciando a riscuotere il suo certo successo.
Poiché i vecchi programmatori di un tempo non erano in grado di piegare i computer verso il loro cospetto, hanno deciso di creare questa potente arma di distruzione di massa in grado di trasformare il semplice Commodore 64 in un Gundam Wing.
 
Stato
Discussione chiusa ad ulteriori risposte.