...

ppt - Sergio Porcu

by user

on
Category: Documents
10

views

Report

Comments

Transcript

ppt - Sergio Porcu
Sistemi a microprocessore
Esercizi – parte I
Domanda 1
Si desidera copiare il contenuto della variabile
X1 nella variabile X2 (ambedue di tipo byte).
Quale dei seguenti frammenti di codice
esegue correttamente l’operazione richiesta?
Soluzioni
1. MOV
2. MOV
MOV
3. MOV
MOV
4. XCHG
X1, X2
AX, X1
X2, AX
AL, X1
X2, AL
X1, X2
Domanda 2
Si desidera confrontare due numeri con segno
memorizzati in AX e BX, rispettivamente,
saltando all’etichetta LAB se il primo è
minore del secondo.
Quale dei seguenti frammenti di codice NON
esegue correttamente l’operazione richiesta?
Soluzioni
1. CMP
JB
2. CMP
JL
3. SUB
JL
AX, BX
LAB
AX, BX
LAB
AX, BX
LAB
Domanda 3
Si consideri il seguente frammento di codice, che
dovrebbe eseguire l’azzeramento di un vettore di N
interi VETT:
L1:
VETT
…
MOV
MOV
MOV
LOOP
DW
N DUP(?)
CX, N
BX, OFFSET VAR
[BX], 0
L1
Quale dei seguenti errori è presente nel codice?
Soluzioni
1. Il registro BX non viene incrementato
2. L’istruzione MOV [BX], 0 va corretta in
MOV WORD PTR [BX], 0
3. L’istruzione MOV [BX], 0 va corretta in
MOV BYTE PTR [BX], 0
4. L’istruzione
MOV BX, OFFSET VAR
va corretta in LEA BX, VAR
Domanda 4
Si vuole eseguire il calcolo del prodotto di due
interi con segno memorizzati in AX e BX,
scrivendo il risultato in CX.
Quale dei seguenti frammenti di codice è
corretto?
Soluzioni
1. MOV CX, AX*BX
2. IMUL AX, BX
MOV CX, AX
3. MUL BX
MOV CX, AX
4. IMUL BX
MOV CX, AX
Domanda 5
Si consideri il seguente frammento di codice
MOV
AX, 200
MOV
BX, 10
DIV
BX
Qual è il contenuto di AX dopo la sua esecuzione?
Soluzioni
1.
2.
3.
4.
10
20
0
indefinito
Domanda 6
Si consideri il seguente frammento di codice
MOV
MOV
ADD
AX, 10000
BX, 10000
AX, BX
Quale delle seguenti affermazioni è vera?
Soluzioni
1. Dopo l’esecuzione del frammento, AX
contiene il valore 20000
2. L’assemblatore segnala un errore
3. Durante l’esecuzione si verifica un
overflow
4. Durante l’esecuzione il programma si
blocca a causa dell’overflow
Domanda 7
Si consideri il seguente frammento di codice
MOV
INT
AH, 1
21H
Al termine della sua esecuzione, qual è il
valore di AL se da tastiera è stato premuto il
tasto ‘0’?
Soluzioni
1. 0
2. Indefinito
3. 48
Domanda 8
Si consideri il seguente frammento di codice
VAR
DB 0,1,2,3,4,5,6,7,8,9
…
MOV BX, 2
MOV SI, 4
MOV AL, VAR[BX][SI]
Dopo la sua esecuzione, qual è il valore di AL?
Soluzioni
1.
2.
3.
4.
0
5
6
53
Fly UP