Assembly/Introduzione
Introduzione
[modifica | modifica sorgente]Per prima cosa... Cos'è l'Assembly? L'Assembly è uno dei molti linguaggi di programmazione. Con alcune particolarità:
- L'Assembly è il linguaggio di programmazione più vicino all'hardware
- Quindi con l'Assembly possiamo fare tutto sul nostro computer
- Anche se essendo il più avanzato è sicuramente il più difficile
- Tutti gli altri linguaggi di programmazione, quando vengono compilati, vengono trasformati dal compilatore, in Assembly.
È proprio questo il lavoro di un compilatore. Esso ha lo scopo di decodificare le istruzioni del linguaggio scelto (C ad esempio) e trasformarle in linguaggio Assembly (vi sarete chiesti cosa succede quando premete il pulsantino "Compila"...)
Abbiamo detto che l'Assembly è il linguaggio più difficile da imparare. Ma allora perché sei qui? Probabilmente la risposta la trovi qui:
- Tu hai bisogno di un corso Assembly per l'università. Sei qui contro la tua volontà
- Un programmatore nella tua azienda è stato pensionato. Gran parte del suo codice è scritto in Assembly, e tu sei stato scelto per gestirlo
- Il tuo capo ti ha costretto a scrivere in Assembly
- I tuoi programmi sono grandi o lenti, e vorresti che l'Assembly ti aiutasse a tenerli sotto controllo
- Vuoi sapere come lavora un computer
- Vuoi sapere come scrivere codice efficiente
- Vuoi provare qualcosa di nuovo
Bhe, quale che sia la tua motivazione, cominciamo!
Perché non studiare l'Assembly
[modifica | modifica sorgente]Per approfondire, vedi Assembly/Introduzione/Perché non studiare l'Assembly. |
L'Assembly ha una cattiva reputazione. L'impressione comune della gente sui programmatori Assembly, è che loro sono tutti pirati informatici o persone con cattive intenzioni. Qui ci sono ragioni che i programmatori danno per non usare l'Assembly:
- L'Assembly è difficile da imparare
- L'Assembly è difficile da leggere e capire
- Con l'Assembly è difficile fare debug
- L'Assembly è difficile da gestire
- Programmare Assembly è una perdita di tempo
- I compilatori moderni hanno eliminato la necessità di programmare in Assembly
- Oggi i computer sono talmente veloci che non abbiamo più bisogno di Assembly per potenziare i programmi
- L'Assembly non è portabile
Da queste righe avrete capito che l'Assembly è decisamente brutto. Questo è quello che pensa l'80% della gente che non conosce l'Assembly. In genere le persone si basano su cose sentite da amici programmatori, che non hanno capito l'Assembly :)
Allora, perché usare l'Assembly?
[modifica | modifica sorgente]- Velocità. I programmi scritti in Assembly sono molto più veloci di quelli scritti con gli HLLs (High Level Languages - Linguaggi di alto livello, come C, VB, Pascal ecc...)
- Spazio. Un programma scritto in Assembly, occupa circa la metà dello spazio necessario ad uno in HLL
- Capacità. Si possono fare cose in Assembly che gli HLLs possono solo sognare
- Conoscenza. La conoscenza dell'Assembly ti aiuterà anche con gli HLLs
Dunque il linguaggio Assembly è degno degli sforzi che starete per fare, e forse, dopo averlo conosciuto, lo userete più di quanto avreste mai pensato.
Differenza tra Assembly e Assembler
[modifica | modifica sorgente]Molti confondono questi due termini pensando che siano la stessa cosa. In realtà, Assembly è il linguaggio di programmazione, mentre Assembler è il programma che Assembla il sorgente. Torneremo più avanti su questo argomento.
Modulo precedente | Torna a | Modulo successivo |