torna a frapec
torna all'elenco delle dispense
Versione TASM
.model small .data n1 DB 12, 34, 56, 78, 90 n2 DB 09, 87, 65, 43, 21 somma DB 5 dup(?) .code inizio: MOV AX, @data MOV DS, AX MOV SI, offset n1 ADD SI,4 MOV DI, offset n2 ADD DI, 4 MOV BX, offset somma ADD BX, 4 MOV CX, 5 CLC ciclo: MOV AL, [SI] ADC AL, [DI] MOV [BX], AL DEC SI DEC DI DEC BX LOOP ciclo END inizio
Osservare il segmento dati per individuare gli offset in cui sono state memorizzate le variabili.
L'assemblatore interpreta i valori in decimale, non essendo seguiti dal suffisso h, ma li memorizza in esadecimale.
Eseguire il programma passo-passo ed osservare l'effetto di ciascuna istruzione eseguita.
Al termine del programma, il risultato si trova nelle locazioni riservate alla variabile somma. Con i valori usati, nessuna somma produce il riporto. Affinchè si abbia un riporto, le somme parziali dovrebbero produrre un risultato, in decimale, maggiore di 255.
Modificare i valori e ripetere il tracing del programma.