Documente Academic
Documente Profesional
Documente Cultură
Abrevieri
FG - forma generală
S - semnificaţia
AF - acţiunea instrucţiunii asupra flagurilor
Instrucţiuni de transfer
Incorect ar fi dacă:
• sursa şi destinaţia ar fi ambele operanzi în
memorie;
• ar fi folosite registrele flags şi ip;
• operanzii ar avea dimensiuni diferite;
• registru CS ar apărea ca destinaţie;
• într-un registru de segment ar fi transferate date
imediate;
• operanzii ar fi simultan registre de segment.
Instrucţiunea mov
Exemple:
mov ax, bx
mov al,bx
mov [bx],[si]
mov al, ch
mov b[bx][si],al
mov cs,ax
Instrucţiunea mov
.model small
.data
a db 5
b db ?
Instrucţiuni de transfer de uz general
Instrucţiunea xchg
(exchange data- interschimbă date)
Exemple
xchg al, ah
xchg bx, ax
xchg al, bx
xchg es, ax
Instrucţiunea xchg
Instrucţiunea in
(Input Data- Citeşte date de la port de intrare)
Instrucţiunea out
(Output Data- Scrie date de la port de ieşire)
.data
vector dw 10, 20, 30, 40, 50
.code
lea bx, vector
mov si,4
mov ax, [bx] [si]
Exemple
push bx
push es
push al
push [bx)
push [bp+5]
Instrucţiunea pop
(Pop Data – refă date din stivă)
Exemple:
pop bx
pop cs
pop es
pop es:[di]
pop al
Instrucţiuni de lucru cu stiva
Din analiza instrucţiunilor push şi pop,
reiese că o secvenţă de refaceri ale unor cantităţi
salvate în stivă (de exemplu, conţinutul unor
registre) trebuie scrisă în ordine inversă.
Dacă secvenţa de salvare a fost:
push ax
push bx
push cx
atunci secvenţa de refacere trebuie să fie:
pop cx
pop bx
pop ax
Ex.
mov ax,100
push ax
mov cx,40
mov bx, 35
push bx
push cx
pop ax
pop cx
pop bx