Documente Academic
Documente Profesional
Documente Cultură
ANEX
SETUL DE INSTRUCIUNI
Procesoare compatibile Intel x86 variantele pe 16 bii
Convenii:
s:
d:
AL|AX:
mem:
mem16:
mem32:
r | ri | rj:
r8:
r16:
rs:
data:
data8:
data16:
disp8:
disp16:
adr:
adr8:
adr32:
port:
tip:
nrcel:
AE:
surs;
destinaie;
acumulatorul implicit de 8 sau de 16 bii;
coninutul unei locaii de memorie sau coninutul a dou locaii de
memorie succesive, adresate cu unul dintre modurile de adresare permise
pentru memoria de date, cu excepia adresrii imediate;
coninutul a dou locaii de memorie succesive adresate cu unul dintre
modurile de adresare permise pentru memoria de date, cu excepia
adresrii imediate;
coninutul a patru locaii de memorie succesive adresate cu unul dintre
modurile de adresare permise pentru memoria de date, cu excepia
adresrii imediate;
un registru oarecare de 8 sau de 16 bii, exceptnd registrele segment;
un registru de 8 bii;
un registru de 16 bii, exceptnd registrele segment;
un registru segment (CS, SS, DS, ES);
un operand de 8 sau 16 bii care face parte din formatul instruciunii
(adresare imediat);
un operand de 8 bii care face parte din formatul instruciunii (adresare
imediat);
un operand de 16 bii care face parte din formatul instruciunii (adresare
imediat);
deplasament pe 8 bii (face parte din formatul instruciunii);
deplasament pe 16 bii (face parte din formatul instruciunii);
o adres complet (pe 16 bii);
o adres scurt (pe 8 bii);
o adres logic exprimat pe patru octei succesivi;
adresa (numrul de ordine) unui port de intrare/ieire, de regul pe 8 bii;
un operand de 8 bii care indic tipul unei ntreruperi i face parte din
formatul instruciunii (adresare imediat);
numrul de celule cu care se poate face deplasarea sau rotaia unui
operand;
adresa efectiv.
Arhitectura Microprocesoarelor
Pentru fanioane:
x:
1:
0:
?:
blanc:
AE=disp8|disp16
6 stri;
- adresare indexat:
AE=(SI)|(DI)+ disp8|disp16
9 stri;
5 stri;
5 stri;
9 stri;
12 stri;
8 stri;
5 stri;
9 stri;
12 stri;
8 stri;
2 stri.
Arhitectura Microprocesoarelor
Ajustare ASCII
pentru adunare
AAA
Operanzi
Nr. de stri
4
OF
?
Operanzi
Nr. de stri
60
Operanzi
Nr. de stri
83
Operanzi
Nr. de stri
4
d,s
Operanzi
AL|AX, data
r, data
mem, data
r1, r2
r, mem
mem, r
OF
?
4
4
17+cAE
3
9+cAE
16+cAE
DF
IF
TF
Octei
SF
?
ZF
?
AF
x
PF
?
CF
x
SF
x
ZF
x
AF
?
PF
x
CF
?
AF
?
PF
x
CF
?
AF
x
PF
?
CF
x
AF
x
PF
x
CF
x
Exemple
AAD
OF
?
DF
IF
TF
Octei
SF
x
ZF
x
Exemple
AAM
OF
?
DF
IF
TF
Octei
SF
?
ZF
?
Exemple
AAS
Adunare cu
transport
Nr. de stri
TF
Exemple
Ajustare ASCII
pentru scdere
AAS
IF
AAA
Ajustare ASCII
pentru nmulire
(se face dup nmulire)
AAM
DF
Octei
1
Ajustare ASCII
pentru mprire
(se face nainte de
mprire)
AAD
ADC
OF
x
DF
Octei
IF
TF
SF
x
ZF
x
Exemple
2-3
3-4
3-6
2
2-4
2-4
ADC
ADC
ADC
ADC
ADC
ADC
AX,9D81H
CL,36H
[SI],2D31H
BX,SI
AX,[BX]
[BX+SI+64H],DI
Arhitectura Microprocesoarelor
ADD
d,s
Operanzi
AL|AX, data
r, data
mem, data
r1, r2
r, mem
mem, r
AND
d,s
Operanzi
AL|AX, data
r, data
mem, data
r1, r2
r, mem
mem, r
CALL
adr
Operanzi
Adunare
Nr. de stri
4
4
17+cAE
3
9+cAE
16+cAE
4
4
17+cAE
3
9+cAE
16+cAE
TF
SF
x
ZF
x
AF
x
PF
x
CF
x
AF
?
PF
x
CF
0
AF
PF
CF
Exemple
ADD
ADD
ADD
ADD
ADD
ADD
OF
0
DF
AX,0F0FH
DX,0F0F0H
[100H],2H
SI,CX
DI,[BX+22H]
[BX+SI],CL
IF
TF
Octei
SF
x
ZF
x
Exemple
2-3
3-4
3-6
2
2-4
2-4
AND
AND
AND
AND
AND
AND
Apelarea unui
subprogram
Nr. de stri
IF
Octei
2-3
3-4
3-6
2
2-4
2-4
I logic
Nr. de stri
DF
OF
DF
AL,7FH
CX,0F0H
[BX],01010000B
AL,BL
DL,[BX+SI]
[DI+10H],AL
IF
TF
Octei
SF
ZF
Exemple
adr32
28
5
CALL PROC-ALT-SEG
disp16
28
3
CALL SUMA
r16
16
2
CALL BX
mem*
21+cAE
2-4
CALL [BX]
mem**
37+cAE
2-4
CALL [SI]
* apelare de subprogram cu adresare indirect definit cu directiva de asamblare ca apelare intra-segment;
** apelare de subprogram cu adresare indirect definit cu directiva de asamblare ca apelare inter-segment.
CBW
Operanzi
Nr. de stri
2
OF
DF
Octei
IF
TF
SF
ZF
Exemple
CBW
AF
PF
CF
Arhitectura Microprocesoarelor
Resetarea
fanionului de
transport
CLC
Operanzi
Nr. de stri
2
OF
Operanzi
Nr. de stri
2
Operanzi
Nr. de stri
2
Operanzi
Nr. de stri
2
s1,s2
Operanzi
OF
AL|AX, data
r, data
mem, data
r1, r2
r, mem
mem, r
SF
ZF
AF
PF
CF
0
IF
TF
SF
ZF
AF
PF
CF
AF
PF
CF
AF
PF
CF
x
Exemple
CLD
OF
DF
IF
0
TF
Octei
SF
ZF
Exemple
CLI
OF
DF
IF
TF
Octei
SF
ZF
Exemple
CMC
OF
operanzi
4
4
17+cAE
3
9+cAE
16+cAE
DF
0
Octei
Compararea a doi
Nr. de stri
TF
Exemple
Complementarea
fanionului de
transport
CMC
IF
CLC
Resetarea fanionului
de validare a ntreruperilor
CLI
DF
Octei
1
Resetarea
fanionului de
direcie
CLD
CMP
DF
Octei
IF
TF
SF
ZF
AF
PF
CF
Exemple
2-3
3-4
3-6
2
2-4
2-4
CMP
CMP
CMP
CMP
CMP
CMP
AL,0DH
SI,200H
[BX+DI+55H],2222H
CL,DH
DH,[4321H]
[BP+2],SI
Arhitectura Microprocesoarelor
Compararea
componentelor din
dou iruri
CMPS
Operanzi
OF
x
Nr. de stri
DF
IF
TF
Octei
SF
x
ZF
x
AF
x
PF
x
CF
x
Exemple
22
1
CMPSB ; pe octei
22
1
CMPSW ; pe cuvinte
Obs.: Primitiva CMPS poate fi nsoit de unul dintre prefixele de repetabilitate REP, REPE|REPZ sau
REPNE|REPNZ; acestea adaug 9 stri.
CWD
Operanzi
Nr. de stri
5
Operanzi
Operanzi
Operanzi
r16
r8
mem
2
3
15+cAE
SF
ZF
AF
PF
CF
IF
TF
SF
x
ZF
x
AF
x
PF
x
CF
x
AF
x
PF
x
CF
x
AF
x
PF
x
CF
Exemple
DAA
OF
?
DF
IF
TF
Octei
SF
x
ZF
x
Exemple
DAS
OF
x
Decrementarea sursei
Nr. de stri
DF
Octei
1
Nr. de stri
4
TF
Exemple
Ajustare zecimal
pentru scdere
DAS
IF
CWD
OF
?
Nr. de stri
4
DF
Octei
1
Ajustare zecimal
pentru adunare
DAA
DEC
OF
DF
Octei
IF
TF
SF
x
ZF
x
Exemple
1
2
2-4
DEC
DEC
DEC
CX
BH
[SI+20H]
Arhitectura Microprocesoarelor
DIV
Operanzi
r8
r16
mem8
ESC
Operanzi
mem
OF
?
mprire
Nr. de stri
8090
144162
8696+
cAE
150168+
cAE
mem16
7 + cAE
Operanzi
Nr. de stri
2
IDIV
Operanzi
r8
r16
mem8
mem16
101112
165184
107118+
cAE
171190+
cAE
SF
?
ZF
?
AF
?
PF
?
CF
?
AF
PF
CF
AF
PF
CF
AF
?
PF
?
CF
?
Exemple
DIV
DIV
DIV
BL
CX
[400H]
2-4
DIV
[SI+10H]
OF
DF
IF
TF
Octei
SF
ZF
Exemple
2-4
ESC
OF
DF
[BX+SI]
IF
TF
Octei
SF
ZF
Exemple
HLT
OF
?
mprire cu semn
Nr. de stri
TF
Octei
Introduce procesorul
n starea de halt
HLT
IF
2
2
2-4
Plaseaz coninutul
unei locaii de memorie
pe magistrala de date
Nr. de stri
DF
DF
Octei
IF
TF
SF
?
ZF
?
Exemple
2
2
2-4
IDIV
IDIV
IDIV
CL
BX
[SI+100H]
2-4
IDIV
[BX+1000H]
Arhitectura Microprocesoarelor
IMUL
Operanzi
r8
r16
mem8
mem16
IN
d,s
Operanzi
AL|AX, port
AL|AX, DX
INC
Operanzi
r16
r8
mem
INT
Operanzi
tip (tip<>3)
OF
x
nmulire cu semn
Nr. de stri
8098
128154
86104+
cAE
134160+
cAE
Operanzi
IMUL
[BP+DI+30H]
OF
AF
?
PF
?
CF
x
IF
TF
SF
ZF
AF
PF
CF
AF
x
PF
x
CF
AF
PF
CF
AF
PF
CF
Exemple
IN
IN
OF
x
AL,1FH
AX,DX
DF
IF
TF
Octei
SF
x
ZF
x
Exemple
1
2
2-4
INC
INC
INC
Cerere de ntrerupere
software
53 sau 4
DF
Octei
2
1
Nr. de stri
ZF
?
Exemple
2-4
Nr. de stri
Nr. de stri
SF
?
CL
BX
[BX]
OF
DF
SI
BL
[BX+SI]
IF
0
TF
0
Octei
SF
ZF
Exemple
INT ; ntrerupere tip 3
INT
67
1
2
Cerere de ntrerupere
de tip 4 (dac exist
depire)
INTO
TF
IMUL
IMUL
IMUL
Incrementarea sursei
52
51
IF
Octei
Nr. de stri
10
8
DF
2
2
2-4
Transferul unui
octet sau cuvnt de
la un port n acumulator
2
3
15+cAE
[tip]
OF
DF
Octei
IF
0
TF
0
SF
ZF
Exemple
INTO
Arhitectura Microprocesoarelor
IRET
Operanzi
Nr. de stri
24
JA | JNBE
disp8
Operanzi
disp8
JAE|JNB|JNC
disp8
Operanzi
disp8
JB|JNAE|JC
disp8
Operanzi
disp8
JBE | JNA
disp8
Operanzi
disp8
OF
x
16 sau 4
16 sau 4
16 sau 4
OF
16 sau 4
DF
IF
TF
Octei
ZF
x
AF
x
PF
x
CF
x
SF
ZF
AF
PF
CF
Exemple
JA
OF
ET1
DF
IF
TF
Octei
SF
ZF
AF
PF
CF
PF
CF
PF
CF
Exemple
JAE
OF
DF
ET2
IF
TF
Octei
SF
ZF
AF
Exemple
JB
Nr. de stri
SF
x
Exemple
Nr. de stri
TF
x
IRET
Nr. de stri
IF
x
Octei
1
Nr. de stri
DF
x
OF
ET3
DF
IF
Octei
TF
SF
ZF
AF
Exemple
JNA
ET4
Arhitectura Microprocesoarelor
JCXZ disp8
Operanzi
disp8
JE | JZ
disp8
Operanzi
disp8
JG | JNLE
disp8
Operanzi
disp8
JGE | JNL
disp8
Operanzi
disp8
JL | JNGE
disp8
Operanzi
disp8
DF
IF
TF
SF
ZF
AF
PF
CF
AF
PF
CF
PF
CF
Nr. de stri
16 sau 4
Octei
Nr. de stri
16 sau 4
16 sau 4
16 sau 4
16 sau 4
DF
GATA
IF
TF
SF
ZF
Exemple
JZ
OF
ET5
DF
IF
TF
Octei
SF
ZF
AF
Exemple
JG
OF
ET6
DF
IF
;salt dac
;(SF)(OF)=0 sau (ZF)=0
TF
Octei
SF
ZF
AF
PF
CF
AF
PF
CF
Exemple
Nr. de stri
OF
Nr. de stri
JCXZ
Octei
Nr. de stri
Exemple
JGE
OF
DF
ET7
IF
Octei
;salt dac
;(SF)(OF)=0
TF
SF
ZF
Exemple
JL
10
ET8
;salt dac
;(SF)(OF)=1
Arhitectura Microprocesoarelor
JLE | JNG
disp8
Operanzi
disp8
Nr. de stri
16 sau 4
Operanzi
DF
IF
TF
Octei
SF
ZF
AF
PF
CF
Exemple
JNG
Salt propriu-zis,
JMP adr
OF
OF
ET9
DF
IF
;salt dac
;(SF)(OF)=1 sau (ZF)=1
TF
SF
ZF
AF
PF
CF
PF
CF
PF
CF
necondiionat
Nr. de stri
Octei
Exemple
adr32
15
5
JMP
ET_ALT_SEG
disp16
15
3
JMP
ETICHETA_IN_SEGMENT
disp8
15
2
JMP
ET_SALT_SCURT
r16
11
2
JMP
BX
mem*
18+cAE
2-4
JMP
[BX+100H]
mem**
24+cAE
2-4
JMP
[DI]
* salt cu adresare indirect definit cu directiv de asamblare ca salt intra-segment;
** salt cu adresare indirect definit cu directiv de asamblare ca salt inter-segment.
JNE | JNZ
disp8
Operanzi
disp8
JNO
Nr. de stri
16 sau 4
disp8
OF
JNE
OF
Nr. de stri
Octei
16 sau 4
Operanzi
Nr. de stri
16 sau 4
TF
SF
ZF
AF
Exemple
disp8
disp8
IF
Octei
Operanzi
JNP | JPO
disp8
DF
ET10
DF
IF
TF
SF
ZF
AF
Exemple
JNO
OF
DF
IF
Octei
ET11
TF
SF
ZF
AF
Exemple
JPO
11
ET12
PF
CF
Arhitectura Microprocesoarelor
JNS
disp8
Operanzi
disp8
disp8
Operanzi
disp8
JP | JPE
disp8
Operanzi
disp8
Nr. de stri
16 sau 4
disp8
Operanzi
Nr. de stri
16 sau 4
Nr. de stri
16 sau 4
PF
CF
IF
PF
CF
PF
CF
PF
CF
AF
PF
CF
AF
PF
CF
TF
SF
ZF
AF
OF
ET14
DF
IF
TF
Octei
SF
ZF
AF
Exemple
JPO
DF
ET15
IF
TF
SF
ZF
AF
Nr. de stri
Nr. de stri
4
Operanzi
AF
Exemple
JO
Octei
r16, mem32
DF
ET13
Octei
LAHF
d,s
ZF
Exemple
JNS
16 sau 4
LDS
SF
disp8
Operanzi
TF
Octei
2
OF
JS
IF
OF
JO
DF
16+cAE
JS
OF
ET16
DF
IF
TF
Octei
SF
ZF
Exemple
ncarc un registru de 16
bii
i registrul segment de date
Nr. de stri
Exemple
LAHF
OF
DF
Octei
IF
TF
SF
ZF
Exemple
2-4
LDS
12
SI,[10H]
Arhitectura Microprocesoarelor
LEA
d,s
Operanzi
r16, mem16
LES
d,s
Operanzi
r16, mem32
ncarc un registru de 16
bii
cu o adres efectiv
Nr. de stri
2+cAE
16+cAE
Operanzi
mem
Nr. de stri
2
Operanzi
Nr. de stri
12
12
OF
Operanzi
disp8
LOOPE|LOOPZ
disp8
Operanzi
disp8
SF
ZF
AF
PF
CF
DF
AF
PF
CF
AF
PF
CF
AF
PF
CF
AF
PF
CF
AF
PF
CF
BX,[BX+SI+0FFFH]
IF
TF
SF
ZF
Exemple
LES
OF
DF
DI,[BX]
IF
TF
Octei
SF
ZF
Exemple
LOCK
OF
DF
XCHG
IF
CL,BL
TF
Octei
SF
ZF
Exemple
1
1
LODSB
LODSW
OF
LOOP disp8
TF
Exemple
LEA
2-4
ncarc componentele
unui ir n acumulator
LODS
IF
Octei
Pe durata instruciunii
pe care o prefixeaz aloc
magistrala calculatorului
LOCK
DF
Octei
2-4
ncarc un registru de 16
bii
i registrul ES
Nr. de stri
OF
DF
; pe octei
; pe cuvinte
IF
TF
SF
ZF
Cicleaz necondiionat
Nr. de stri
9 sau 5
Octei
Cicleaz ct timp
egal sau zero
Nr. de stri
11 sau 5
Exemple
LOOP
OF
DF
Octei
CICLU_1
IF
TF
SF
ZF
Exemple
LOOPE
13
CICLU_2
Arhitectura Microprocesoarelor
LOOPNE |
LOOPNZ
disp8
Operanzi
disp8
Nr. de stri
11 sau 5
OF
d,s
Operanzi
Nr. de stri
SF
ZF
AF
PF
CF
AF
PF
CF
AF
PF
CF
Exemple
LOOPNE
DF
CICLU_3
IF
TF
Octei
SF
ZF
Nr. de stri
Exemple
2-3
3-6
3
3
2
2-4
2-4
2
2-4
2
2-4
Transfer o component
a irului surs
n irul destinaie
Operanzi
TF
r, data
4
mem, data
10+cAE
AL|AX, mem
10
mem, AL|AX
10
r1, r2
2
r, mem
8+cAE
mem, r
9+cAE
rs*, r16
2
rs*, mem16
8+cAE
r16, rs
2
mem16, rs
9+cAE
* registrul segment nu poate fi CS
MOVS
IF
Octei
2
OF
MOV
DF
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
OF
DF
CX,3168H
[BX],491FH
AL,[1064H]
[1064H],AX
AX,CX
BP,[BX+DELTA]
[DI+100H],CX
SS,DX
DS,[1000H]
BP,SS
[2000H],CS
IF
TF
Octei
SF
ZF
Exemple
18
1
MOVSB
; pe octei
18
1
MOVSW
; pe cuvinte
Obs.: Primitiva MOVS poate fi nsoit de prefixul de repetabilitate REP; acesta adaug 9 stri.
OF
MUL
Operanzi
r8
r16
mem8
mem16
7077
118133
7683+
cAE
124139+
cAE
IF
TF
nmulire
Nr. de stri
DF
Octei
SF
ZF
AF
PF
CF
Exemple
2
2
2-4
MUL
MUL
MUL
BL
CX
[SI+300H]
2-4
MUL
[200H]
14
Arhitectura Microprocesoarelor
NEG
Operanzi
r
mem
* (CF) = 0 dac (s)=0H
NOT
Operanzi
r
mem
Complementare fa de 2
a sursei
Nr. de stri
3
16+cAE
3
16+cAE
d,s
Operanzi
OF
AL|AX, data
r, data
mem, data
r1, r2
r, mem
mem, r
OUT
d,s
Operanzi
port, AL|AX
DX, AL|AX
POP
Operanzi
r16
mem16
rs (nu CS)
4
4
17+cAE
3
9+cAE
16+cAE
10
8
Nr. de stri
8
17+cAE
8
DF
IF
TF
ZF
x
AF
x
PF
x
CF
1*
SF
ZF
AF
PF
CF
Exemple
NOT
NOT
DF
BL
[1000H]
IF
TF
Octei
SF
ZF
AF
PF
CF
AF
PF
CF
AF
PF
CF
Exemple
2-3
3-4
3-6
2
2-4
2-4
OR
OR
OR
OR
OR
OR
OF
AX,3030H
CX,001FH
[BX+DI],1F1FH
AH,BH
DX,[DI]
[BX],AX
DF
IF
TF
Octei
SF
ZF
Exemple
2
1
SF
x
AL
[BX]
Nr. de stri
TF
Octei
2
2-4
SAU logic
Nr. de stri
IF
Exemple
NEG
NEG
OF
OR
DF
Octei
2
2-4
Complementare fa de 1
a sursei
Nr. de stri
OF
x
OUT
OUT
OF
DF
44,AX
DX,AL
IF
Octei
TF
SF
ZF
Exemple
1
2-4
1
POP
POP
POP
15
BX
[SI]
ES
Arhitectura Microprocesoarelor
POPF
Operanzi
Nr. de stri
8
PUSH
Operanzi
r16
mem16
rs
PUSHF
Operanzi
11
16+cAE
10
10
RCL s, nrcel
Operanzi
r, 1
r, CL
mem, 1
mem, CL
RCR s, nrcel
Operanzi
r, 1
r, CL
mem, 1
mem, CL
2
8+4/bit
15+cAE
20+cAE
+4/bit
2
8+4/bit
15+cAE
20+cAE
+4/bit
SF
x
ZF
x
AF
x
PF
x
CF
x
AF
PF
CF
AF
PF
CF
AF
PF
CF
x
AF
PF
CF
x
Exemple
DF
IF
TF
SF
ZF
Exemple
1
2-4
1
PUSH
PUSH
PUSH
OF
DF
SI
[BX]
DS
IF
TF
Octei
SF
ZF
Exemple
PUSHF
OF
x
DF
IF
TF
Octei
SF
ZF
Exemple
2
2
2-4
2-4
Nr. de stri
TF
x
Octei
Nr. de stri
IF
x
POPF
OF
Nr. de stri
DF
x
Octei
1
Transfer n stiv
de la surs
Nr. de stri
OF
x
RCL
RCL
RCL
RCL
OF
x
DF
Octei
AX,1
BL,CL
ALFA,1
[DI+ALFA],CL
IF
TF
SF
ZF
Exemple
2
2
2-4
2-4
RCR
RCR
RCR
RCR
16
BX,1
CX,CL
[BX+20],1
[SI],CL
Arhitectura Microprocesoarelor
Repet necondiionat
primitiva de operaie
cu iruri pe care o precede
REP
Operanzi
Nr. de stri
9
REPE | REPZ
Operanzi
REPNE|REPNZ
Operanzi
OF
Operanzi
data16
data16
ROL s, nrcel
Operanzi
r, 1
r, CL
mem, 1
mem, CL
TF
SF
ZF
AF
PF
CF
DF
AF
PF
CF
AF
PF
CF
AF
PF
CF
AF
PF
CF
x
MOVSB
IF
TF
Octei
SF
ZF
Exemple
REPE
OF
DF
CMPSB
IF
TF
Octei
SF
ZF
Exemple
REPNE
OF
RET [data16]
IF
Exemple
REP
Nr. de stri
DF
Octei
1
Nr. de stri
OF
DF
SCASW
IF
TF
SF
ZF
Rentoarcere din
subprogram
Nr. de stri
8
12
18
17
Octei
2
8+4/bit
15+cAE
20+cAE
+4/bit
RET
RET
RET
RET
OF
x
Rotaie stnga
Nr. de stri
Exemple
1
3
1
3
DF
Octei
;intra-segment
4 ;intra-segment
;inter-segment
2 ;inter-segment
IF
TF
SF
ZF
Exemple
2
2
2-4
2-4
ROL
ROL
ROL
ROL
17
DI,1
BX,CL
[DI+DELTA],1
[BX+DI],CL
Arhitectura Microprocesoarelor
ROR s, nrcel
Operanzi
r, 1
r, CL
mem, 1
mem, CL
2
8+4/bit
15+cAE
20+cAE
+4/bit
Operanzi
Nr. de stri
4
SAL | SHL
s,nrcel
Operanzi
r, 1
r, CL
mem, 1
mem, CL
SAR s, nrcel
Operanzi
r, 1
r, CL
mem, 1
mem, CL
2
8+4/bit
15+cAE
20+cAE
+4/bit
2
8+4/bit
15+cAE
20+cAE
+4/bit
ZF
AF
PF
CF
x
ROR
ROR
ROR
ROR
OF
DF
CX,1
BX,CL
[SI],1
BETA,CL
IF
TF
Octei
SF
x
ZF
x
AF
x
PF
x
CF
x
AF
?
PF
x
CF
x
AF
?
PF
x
CF
x
Exemple
SAHF
OF
x
DF
IF
TF
Octei
SF
x
ZF
x
Exemple
2
2
2-4
2-4
Nr. de stri
SF
Exemple
2
2
2-4
2-4
Nr. de stri
TF
Octei
SAHF
IF
Rotaie dreapta
Nr. de stri
DF
SHL
SAL
SHL
SHL
OF
x
DF
AL,1
SI,CL
[DI+100H],1
[BP+SI],CL
IF
TF
Octei
SF
x
ZF
x
Exemple
2
2
2-4
2-4
SAR
SAR
SAR
SAR
18
AH,1
DI,CL
[BP],1
[DI],CL
Arhitectura Microprocesoarelor
SBB
d,s
Operanzi
AL|AX, data
r, data
mem, data
r1, r2
r, mem
mem, r
4
4
17+cAE
3
9+cAE
16+cAE
Operanzi
Nr. de stri
TF
Octei
SF
ZF
AF
PF
CF
AF
x
PF
x
CF
x
Exemple
2-3
3-4
3-6
2
2-4
2-4
Compar elementele
unui ir cu acumulatorul
SCAS
IF
Scdere cu mprumut
Nr. de stri
DF
SBB
SBB
SBB
SBB
SBB
SBB
OF
x
DF
AX,4D2CH
CL,1
[BP+SI],3F8H
BL,DL
DI,[BX+ALFA]
[SI+100],AX
IF
TF
Octei
SF
x
ZF
x
Exemple
15
1
SCASB
; pe octei
15
1
SCASW
; pe cuvinte
Obs.: Primitiva SCAS poate fi nsoit de unul dintre prefixele de repetabilitate REP, REPE|REPZ sau
REPNE|REPNZ; acestea adaug 9 stri.
SHR s, nrcel
Operanzi
r, 1
r, CL
mem, 1
mem, CL
Nr. de stri
2
8+4/bit
15+cAE
20+cAE
+4/bit
Operanzi
Nr. de stri
2
Operanzi
Nr. de stri
2
IF
TF
SF
x
ZF
x
AF
?
PF
x
CF
x
AF
PF
CF
1
AF
PF
CF
Exemple
SHR
SHR
SHR
SHR
OF
DF
BL,1
SI,CL
[BP+SI],1
[BX+DI+BETA],CL
IF
TF
Octei
SF
ZF
Exemple
Setarea fanionului
de direcie
STD
DF
Octei
2
2
2-4
2-4
Setarea fanionului
de transport
STC
OF
x
STC
OF
DF
1
Octei
IF
TF
SF
ZF
Exemple
STD
19
Arhitectura Microprocesoarelor
Setarea fanionului
de validare a ntreruperilor
STI
Operanzi
Nr. de stri
2
Operanzi
Nr. de stri
DF
IF
1
TF
Octei
SF
ZF
AF
PF
CF
AF
PF
CF
AF
x
PF
x
CF
x
AF
?
PF
x
CF
0
AF
PF
CF
Exemple
ncarc elementele
unui ir din acumulator
STOS
OF
STI
OF
DF
IF
TF
Octei
SF
ZF
Exemple
11
1
STOSB
; pe octei
11
1
STOSW
; pe cuvinte
Obs.: Primitiva STOS poate fi nsoit de prefixul de repetabilitate REP; acesta adaug 9 stri.
SUB
d,s
Operanzi
AL|AX, data
r, data
mem, data
r1, r2
r, mem
mem, r
TEST
s1,s2
Operanzi
AL|AX, data
r, data
mem, data
r1, r2
r, mem
OF
x
Scdere
Nr. de stri
4
4
17+cAE
3
9+cAE
16+cAE
4
5
11+cAE
3
9+cAE
Operanzi
Nr. de stri
TF
SF
x
ZF
x
Exemple
2-3
3-4
3-6
2
2-4
2-4
SUB
SUB
SUB
SUB
SUB
SUB
OF
0
DF
AL,65H
SI,5280
[SI+14H],136H
CX,BX
DH,[BP+4]
[BP+10],CL
IF
TF
Octei
SF
x
ZF
x
Exemple
2-3
3-4
3-6
2
2-4
Introduce procesorul
n starea de wait, pn
cnd semnalul TEST=0
WAIT
IF
Octei
I logic nedistructiv
Nr. de stri
DF
TEST
TEST
TEST
TEST
TEST
OF
DF
Octei
AX,0040H
SI,0050
[BP],00100000B
SI,DI
AL,[55H]
IF
TF
SF
ZF
Exemple
WAIT
20
Arhitectura Microprocesoarelor
XCHG
d,s
Transfer sursa
la destinaie i destinaia
la surs
Operanzi
Nr. de stri
r16
r1, r2
r, mem
3
4
17 + cAE
OF
TF
SF
ZF
AF
PF
CF
AF
PF
CF
AF
?
PF
x
CF
0
Exemple
XCHG
XCHG
XCHG
DF
IF
TF
SF
ZF
Translateaz
Operanzi
Nr. de stri
11
XOR
IF
Octei
1
2
2-4
OF
XLAT
DF
d,s
Operanzi
AL|AX, data
r, data
mem, data
r1, r2
r, mem
mem, r
Octei
XLAT
OF
0
SAU exclusiv
Nr. de stri
4
4
17+cAE
3
9+cAE
16+cAE
Exemple
DF
Octei
IF
TF
SF
x
ZF
x
Exemple
2-3
3-4
3-6
2
2-4
2-4
XOR
XOR
XOR
XOR
XOR
XOR
21
AX,5522H
SI,00C2H
[BX+DI],2244H
CX,BX
AX,[SI]
[SI+ALFA],DX