diff --git a/README.md b/README.md index 7b37963..b3044ac 100644 --- a/README.md +++ b/README.md @@ -26,4 +26,67 @@ For each **XML file** there is a **DTD file** associated which is used to ensure \* means deprecated. +## KEY TO ABBREVIATIONS + - **x32m** = 32-bit mode support. + - **x64m** = 64-bit mode support. + - **mnem** = Instruction Mnemonic. + - **args** = Instruction Arguments. + - **opc** = Opcodes. + - **openc** = Operand Encoding name. + - **dscrp** = Description. + - **oprndenc** = Instruction Operand Encoding. + - **oprnd1** = Operand 1. + - **oprnd2** = Operand 2. + - **oprnd3** = Operand 3. + - **oprnd4** = Operand 4. + +***NOTE:*** FOR THE REST OF KEYS YOU SHOULD REFER TO INTEL/AMD DOCUMENTATIONS! + +## Example +Here's a simple example of ADDPD instruction. +``` + + ADDPD--Add Packed Double-Precision Floating-Point Values. + + ADDPD + xmm1,xmm2/m128 + 66 0F 58 /r + + SSE2 + + Add packed double-precision floating-point values from xmm2/m128 to xmm1. + + + VADDPD + xmm1,xmm2,xmm3/m128 + VEX.NDS.128.66.0F.WIG 58 /r + + AVX + + Add packed double-precision floating-point values from xmm3/mem to xmm2 and stores result in xmm1. + + + VADDPD + ymm1,ymm2,ymm3/m256 + VEX.NDS.256.66.0F.WIG 58 /r + + AVX + + Add packed double-precision floating-point values from ymm3/mem to ymm2 and stores result in ymm1. + + + ModRM:reg(r,w) + ModRM:r/m(r) + NA + NA + + + ModRM:reg(w) + VEX.vvvv(r) + ModRM:r/m(r) + NA + + +``` + [1]:111