Page 1111 - Informatica dalla A a Z
P. 1111
Il linguaggio Assembly
Affinché la CPU possa compiere il proprio lavoro, in memoria deve risiedere un programma
contenente delle istruzioni formattate secondo un preciso codice.
Il linguaggio Assembly, che non è assolutamente un linguaggio portabile, possiede una cor-
rispondenza uno a uno con il linguaggio macchina specifico. Ad ogni codice operativo delle
istruzioni della CPU esiste una corrispondente istruzione Assembly.
Queste istruzioni, che sono oltre 300, vengono direttamente tradotte in un’istruzione di
macchina.
Esempio:
Il set di istruzioni del linguaggio Assembly è una rappresentazione mnemonica dell’ISA del
processore (linguaggio macchina), in cui viene associato a ciascun comando un breve
codice (codice mnemonico), formato generalmente da tre lettere, che ne rappresenta il
significato.
È l’unico linguaggio che permette il pieno controllo della funzionalità della CPU, della
memoria e dei dispositivi di I/O, ma non è particolarmente adatto a realizzare programmi
complessi, inoltre richiede un ottima conoscenza dell’architettura della macchina.
Vediamo le istruzioni base del linguaggio, suddivise per tipo:
- Istruzioni di spostamento o assegnazione:
MOV, PUSH, POP, XCHG, LEA, LDS, LES;
- Istruzioni aritmetiche:
ADD, SUB, MUL, IMUL, DIV, IDIV, ADC, SBB, INC, DEC, NEG, BCD, DAA, DAS,
AAA, AAS, AAM, AAD;
- Istruzioni bitwise logiche:
AND, OR, XOR, NOT;
- Istruzioni bitwise di rotazione/traslazione:
SAL, SAR, SHL, SHR, ROL, ROR, RCL, RCR;
1107