Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Esempi di programmazione
assembly
ing. Alessandro Cilardo
Programma con matrici
File: programma013.a68
4 8101
MAT DC.B 4,6,67,3,54,6,2,9,5
6 8102
67 8103
colonne 3 8104
righe 0 1 2 8105
54
0 4 6 67 6 8106
1 3 54 6 2 8107
9 8108
2 2 9 5
5 8109
2 2 9 5
ripetizione
8101 A0 =
prima
4
registro A0, che conterrà 8101
6 8102
l’indirizzo del primo elemento
67 8103
di ogni riga
ripetizione
seconda
8104 A0 =
3
• L’indirizzo dell’elemento da 8104
54 8105
prelevare si può ottenere come 6 8106
ripetizione
somma di A0 e del registro D1, 8107 A0 =
terza
2
il contatore di colonne usato 8107
9 8108
all’interno di ciascuna riga 5 8109
valore iniziale
• Useremo due registri indirizzo indirizzo
8100 A3 =
(scegliamo A3 e A4), che $0003
8102 8100
scorrerrano il vettore: A3 $0029
$0002 8104
dall’inizio fino a metà, A4 invece
$0005 8106 ……
dalla fine fino a metà del vettore
$000C 8108
• I contenuti delle due locazioni
valore iniziale
$0022 810A
aventi per indirizzi A3 ed A4 810C
A4 =
? 810C
verranno invertiti (swap)
• Per A3 useremo il post-incremento: A3 viene prima usato
come indirizzo e poi incrementato: partirà dal primo indirizzo (8100)
• Per A4 useremo il pre-decremento: A4 viene prima
decrementato e poi usato: partirà dal primo indirizzo successivo al
vettore (810C), in modo che il primo indirizzo usato sarà 810A
Alessandro Cilardo – Architettura del calcolatore
Programma con vettori
File: programma014.a68