Vorrei farvi alcune domande relative all'assembler 8086:
1) Come faccio a sapere i modi di indirizzamento delle seguenti istruzioni?
per esempio:
CMP FOO[DI+25], DH
JMP TABLE[SI]
MOV BAR[BX], 1642
ADD AL,76
POP [DI]
Non riesco a capire quale operando devo prendere in considerazione per il modo di indirizzamento. Nella guida assembler 8086 vedo che mi prende di riferimento l'operando sorgente e mi dice il tipo di indirizzamento (http://www.scribd.com/doc/4596052/Memor ... andi-ISA16) però mi prende come destinazione sempre un registro (AX) invece nei casi che ho scritto io come faccio? Ci sono 2 indirizzamenti? Mi potete spiegare come faccio a capirlo.
2) Poi dovrei calcolare il numero di cicli di bus per il fetch e per l'esecuzione supponendo di essere nell'8086 quindi bus dati a 16 bit e bus indirizzi a 20 bit. Se prendo l'istruzione MOV BAR[BX],1642 secondo me occupa 6 byte perchè 2 byte per Opcode e W,D mod, reg,r/m poi altri 2 byte per BAR che è una variabile di memoria e altri 2 byte per 1642 che deve essere codificato su 2 byte. Quindi per inserire l'istruzione nell'IR ci vorranno 3 cicli di fetch e per l'esecuzione?
Grazie