               * indicates 286+ only (not available in 8088/8086).
                indicates 386 and/or 486 and/or Pentium
   ͸
      x0      x1      x2      x3      x4      x5      x6      x7   
 ͵
 0x ADD     ADD     ADD     ADD     ADD     ADD     PUSH    POP    
    r/m,r8 r/m,r16  r8,r/m r16,r/m  AL,im8 AX,im16  ES      ES     
 Ĵ
 1x ADC     ADC     ADC     ADC     ADC     ADC     PUSH    POP    
    r/m,r8 r/m,r16  r8,r/m r16,r/m  AL,im8 AX,im16  SS      SS     
 Ĵ
 2x AND     AND     AND     AND     AND     AND     SEG     DAA    
    r/m,r8 r/m,r16  r8,r/m r16,r/m  AL,im8 AX,im16  ES             
 Ĵ
 3x XOR     XOR     XOR     XOR     XOR     XOR     SEG     AAA    
    r/m,r8 r/m,r16  r8,r/m r16,r/m  AL,im8 AX,im16  SS             
 Ĵ
 4x INC     INC     INC     INC     INC     INC     INC     INC    
    AX      CX      DX      BX      SP      BP      SI      DI     
 Ĵ
 5x PUSH    PUSH    PUSH    PUSH    PUSH   PUSH     PUSH    PUSH   
    AX      CX      DX      BX      SP     BP       SI      DI     
 Ĵ
 6x * PUSHA * POPA  * BOUND ARPL    SEG FS SEG GSopSize addrSiz
                                                    prefix  prefix 
 Ĵ
 7x JO      JNO     JB/     JNB/    JE/     JNE/    JBE/    JNBE/  
                    JNAE    JAE     JZ      JNZ     JNA     JA     
 Ĵ
 8x ArOp1   ArOp1   ArOp2   ArOp2   TEST    TEST    XCHG    XCHG   
   r/m,im8 r/m,im16r/m8,im8rm16,im8r/m,r8  r/m,r16 r8,r/m  r16,r/m 
 Ĵ
 9x NOP     XCHG    XCHG    XCHG    XCHG    XCHG    XCHG    XCHG   
            AX,CX   AX,DX   AX,BX   AX,SP   AX,BP   AX,SI   AX,DI  
 Ĵ
 Ax MOV     MOV     MOV     MOV     MOVSB   MOVSW   CMPSB   CMPSW  
   AL,mem8 AX,mem16mem8,AL mem16,AX                                
 Ĵ
 Bx MOV     MOV     MOV     MOV     MOV     MOV     MOV     MOV    
    AL,im8  CL,im8  DL,im8  BL,im8  AH,im8  CH,im8  DH,im8  BH,im8 
 Ĵ
 Cx* ShfOp * ShfOp RET nearRET near LES     LDS     MOV     MOV    
   r/m8,immr/m16,im im16          r16,mem r16,mem mem,im8 mem,im16
 Ĵ
 Dx ShfOp   ShfOp   ShfOp   ShfOp   AAM     AAD             XLAT   
   r/m8,1  r/m16,1 r/m8,CL r/m16,CL                                
 Ĵ
 Ex LOOPNE/ LOOPE/  LOOP    JCXZ    IN      IN      OUT     OUT    
    LOOPNZ  LOOPZ          JECXZ  AL,port8AX,port8AL,port8AX,port8
 Ĵ
 Fx LOCK            REP/    REPZ/   HALT    CMC     Grp1    Grp1   
                    REPNE   REPE                   r/m8    r/m16   
 ͵
      x0      x1      x2      x3      x4      x5      x6      x7   
   ;
   ͸
      x8      x9      xA      xB      xC      xD      xE      xF   
 ͵
 0x OR      OR      OR      OR      OR      OR      PUSH   *Extnsn
    r/m,r8 r/m,r16  r8,r/m r16,r/m  AL,im8 AX,im16  CS      OpCode 
 Ĵ
 1x SBB     SBB     SBB     SBB     SBB     SBB     PUSH    POP    
    r/m,r8 r/m,r16  r8,r/m r16,r/m  AL,im8 AX,im16  DS      DS     
 Ĵ
 2x SUB     SUB     SUB     SUB     SUB     SUB     SEG     DAS    
    r/m,r8 r/m,r16  r8,r/m r16,r/m  AL,im8 AX,im16  CS             
 Ĵ
 3x CMP     CMP     CMP     CMP     CMP     CMP     SEG     AAS    
    r/m,r8 r/m,r16  r8,r/m r16,r/m  AL,im8 AX,im16  DS             
 Ĵ
 4x DEC     DEC     DEC     DEC     DEC     DEC     DEC     DEC    
    AX      CX      DX      BX      SP      BP      SI      DI     
 Ĵ
 5x POP     POP     POP     POP     POP    POP      POP     POP    
    AX      CX      DX      BX      SP     BP       SI      DI     
 Ĵ
 6x * PUSH  * IMUL  * PUSH  * IMUL  * INSB  * INSW * OUTSB * OUTSW 
    imm16  r/m,im16 imm8   r/m,im8                                 
 Ĵ
 7x JS      JNS     JP/     JNP/    JL/     JNL/    JLE/    JNLE/  
                    JPE     JPO     JNG     JGE     JNG     JG     
 Ĵ
 8x MOV     MOV     MOV     MOV     MOV     LEA     MOV     POP    
   r/m,r8  r/m,r16 r8,r/m  r16,r/m r/m,seg r16,mem seg,r/m  r/m    
 Ĵ
 9x CBW     CWD     CALL    WAIT    PUSHF   POPF    SAHF    LAHF   
                    far                                            
 Ĵ
 Ax TEST    TEST    STOSB   STOSW   LODSB   LODSW   SCASB   SCASW  
   AL,mem8 AX,mem16                                                
 Ĵ
 Bx MOV     MOV     MOV     MOV     MOV     MOV     MOV     MOV    
   AX,im16 CX,im16 DX,im16 BX,im16 SP,im16 BP,im16 SI,im16 DI,im16 
 Ĵ
 Cx* ENTER * LEAVE RET far RET far  INT 3   INT     INTO    IRET   
   im16,im8         im16                   im8                    
 Ĵ
 Dx ESC 0   ESC 1   ESC 2   ESC 3   ESC 4   ESC 5   ESC 6   ESC 7  
    387/486 387/486 387/486 387/486 387/486 387/486 387/486 387/486
 Ĵ
 Ex CALL    JMP     JMP     JMP     IN      IN      OUT     OUT    
    near    near    far     short   AL,DX   AX,DX   AL,DX   AX,DX  
 Ĵ
 Fx CLC     STC     CLI     STI     CLD     STD     Grp2    Grp3   
                                                    r/m8    r/m16  
 ͵
      x8      x9      xA      xB      xC      xD      xE      xF   
   ;

 R/m,r16 is complex opcodes which needed additional bytes describing which
register to use. 

 It goes in such way :
 0  	Ax,[Bx][Si]
 1	Ax,[Bx][Di]
 2	Ax,[Bp][Si]
 3	Ax,[Bp][Di]
 4	Ax,[Si]
 5	Ax,[Di]
 6	Ax,[Imm16]		; This means that additionally 2 bytes as addr
 7	Ax,[Bx]

 8	Cx,[Bx][Si]
 9	Cx,[Bx][Di]
 ...	...

 As you can notice 8*8=64=40h. Yea, 40h-80h there another structure. It's same,
 but slightly different. Here it is:

 40h	Ax,[Bx][Si][Imm8]
 41h	Ax,[Bx][Di][Imm8]
 42h	Ax,[Bp][Si][Imm8]
 43h	Ax,[Bp][Di][Imm8]
 44h	Ax,[Si][Imm8]
 45h	Ax,[Di][Imm8]
 46h	Ax,[Bp][Imm8]
 47h	Ax,[Bx][Imm8]

 48h	Cx,[Bx][Si][Imm8]
 ,where Imm8 is 8bit addr. And so on.
 At 80h begins another table,same to previous but with 16bit opcodes sizes.

 At 0C0h begins completely another structure.

 0C0h	Ax,Ax
 0C1h	Ax,Cx
 0C2h	Ax,Dx
 ..	..
 Etc.	Thats for all registers.

 Look at this stuff at bit level. There is 8 registers, so we're need only
 three bits to describe em. 

 00 000 000
 ^   ^   ^
 |   |   |
Kind |   |
    Reg	 |
       Opcode Description

 Kind : 00 - is simple moves like Ax,[Bx][Si]
	01 - this is second group like Ax,[Bx][Si][Imm8]
	10 - third group like Ax,[Bx][Si][Imm16]
	11 - register,register
	
 Reg:	Just source/destination register.
	000 - Ax	001 - Cx	010 - Dx	011 - Bx
	100 - Sp	101 - Bp	110 - Si	111 - Di
 
 Opcode Description: Describes type of memory addresation/second register
	000 - [Bx][Si]		001 - [Bx][Di]	010 - [Bp][Si]
	011 - [Bp][Di]		100 - [Si]	101 - [Di]
	110 - [Imm16]/[Bp]	111 - [Bx]

-----------------------------------------------------------------------------
I'll advice you to have HIEW of latest version. This is really helpful for
examining i80x86 opcode table !.

Deviator/HAZARD.
