Андрей Газибаров


без тайни

Инструкциите On-line

SCAS
Сканиране на низ
Общи форми: SCAS dest
SCASB
SCASW
SCASD
SCASQ
Форма КОП CPUID I8086 I80386 I80486
16 32 64 Alt   I8086 I80386 I80486
SCASB AE AE AE F4 14   19 7 6
SCASW AF 66 AF 66 AF F4 15   19 7 6
SCASD 66 AF AF AF F4 16 386+   7 6
SCASQ     48 AF F4 17 x86-64      
REPO SCASB       F4 F0 14   OF = 1
REPO SCASW       F4 F0 15  
REPO SCASD       F4 F0 16  
REPO SCASQ       F4 F0 17  
REPNO SCASB       F4 F1 14   OF = 2
REPNO SCASW       F4 F1 15  
REPNO SCASD       F4 F1 16  
REPNO SCASQ       F4 F1 17  
REPC SCASB 65 AE     F4 F2 14 V20 CF = 1
REPB SCAS, REPNAE SCAS
REPC SCASW 64 AF     F4 F2 15 V20
REPC SCASD       F4 F2 16  
REPC SCASQ       F4 F2 17  
REPNC SCASB 64 AE     F4 F3 14   CF = 2
REPNB SCAS, REPNA SCAS
REPNC SCASW 64 AF     F4 F3 15  
REPNC SCASD       F4 F3 16  
REPNC SCASQ       F4 F3 17  
REPZ SCASB F3 AE F3 AE F3 AE F4 F4 14   ZF = 1
REPE SCAS
REPZ SCASW F3 AF F3 66 AF F3 66 AF F4 F4 15  
REPZ SCASD F3 66 AF F3 AF F3 AF F4 F4 16  
REPZ SCASQ     F3 48 AF F4 F4 17  
REPNZ SCASB F2 AE F2 AE F2 AE F4 F5 14   ZF = 1
REPNE SCAS
REPNZ SCASW F2 AF F2 66 AF F2 66 AF F4 F5 15  
REPNZ SCASD F2 66 AF F2 AF F2 AF F4 F5 16  
REPNZ SCASQ     F2 48 AF F4 F5 17  
REPBE SCASB       F4 F6 14   CF OR ZF = 1
REPNA SCAS
REPBE SCASW       F4 F6 15  
REPBE SCASD       F4 F6 16  
REPBE SCASQ       F4 F6 17  
REPA SCASB       F4 F7 14   CF OR ZF = 2
REPNBE SCAS
REPA SCASW       F4 F7 15  
REPA SCASD       F4 F7 16  
REPA SCASQ       F4 F7 17  
REPS SCASB       F4 F8 14   SF = 1
REPS SCASW       F4 F8 15  
REPS SCASD       F4 F8 16  
REPS SCASQ       F4 F8 17  
REPNS SCASB       F4 F9 14   SF = 2
REPNS SCASW       F4 F9 15  
REPNS SCASD       F4 F9 16  
REPNS SCASQ       F4 F9 17  
REPP SCASB       F4 FA 14   PF = 1
REPPE SCAS
REPP SCASW       F4 FA 15  
REPP SCASD       F4 FA 16  
REPP SCASQ       F4 FA 17  
REPNP SCASB       F4 FB 14   PF = 2
REPPO SCAS
REPNP SCASW       F4 FB 15  
REPNP SCASD       F4 FB 16  
REPNP SCASQ       F4 FB 17  
REPL SCASB       F4 FC 14   SF XOR OF = 1
REPNGE SCAS
REPL SCASW       F4 FC 15  
REPL SCASD       F4 FC 16  
REPL SCASQ       F4 FC 17  
REPGE SCASB       F4 FD 14   SF XOR OF = 2
REPNL SCAS
REPGE SCASW       F4 FD 15  
REPGE SCASD       F4 FD 16  
REPGE SCASQ       F4 FD 17  
REPLE SCASB       F4 FE 14   SF XOR OF OR ZF = 1
REPNG SCAS
REPLE SCASW       F4 FE 15  
REPLE SCASD       F4 FE 16  
REPLE SCASQ       F4 FE 17  
REPG SCASB       F4 FF 14   SF XOR OF OR ZF = 2
REPNLE SCAS
REPG SCASW       F4 FF 15  
REPG SCASD       F4 FF 16  
REPG SCASQ       F4 FF 17  
Забележка Операндът в асемблерското представяне на инструкцията не се кодира. Операндът единствено дава възможност на асемблера да провери правилното асоцииране на сегменти със сегментни регистри, тъй като сегментът, използван за dest е винаги ES и не може да се промени с префикс.
Действие Acc – ES:[eDI] /* Acc е AL, AX, EAX, RAX */
CASE Инструкция OF
  SCASB: OperSize ← 1
  SCASW: OperSize ← 2
  SCASD: OperSize ← 4
  SCASQ: OperSize ← 8
END CASE
IF DF = 0 THEN
  eDI ← eDI + OperSize
ELSE
  eDI ← eDI - OperSize
ENDIF
Флагове
PE VM NT IOPL OF DF IF TF SF ZF AF PF CF
        A T     A A A A A
CPU
8086 186 V20 286 386 486 P P-P P-II MMX SSE 3D! E64
• • • • • • • • •       •
ИзключенияОБЩИ
 
Съдържание Пълен текст
 
  PDF, 3.6M Приложение, 18К