EuroAssembler Index Manual Download Source Macros


Sitemap Links Forum Tests Projects

External links

This page is hosting links to external documentation and resources used by EuroAssembler project, including errata of mistakes and typos discovered during the €ASM developement.

I cannot guarantee that the provided links will be working forever and that they wil keep the same information as they did when I was reading them. If the link is not available, searching the Internet for a few words from the resource title usually yields the functional alternative locations.

Assembly and linking tutorials ↓

Assembly projects ↓

File format specifications ↓

Instruction specifications from CPU vendors ↓

Instruction specifications from other sources ↓

Operating systems interfaces ↓

Other specifications ↓

Useful tools ↓


↑ Assembly and linking tutorials

[ArtOfAsm] ↓

[BasicPractices] ↓

[GoTools] ↓

[GreatCode] ↓

[GreatDebate] ↓

[Iczelion] ↓

[Linkers] ↓

[LinuxAsmHowto] ↓

[ProgrammingOptimisation] ↓

[Skeleton] ↓

[SoftwareOptimisation] ↓

[UnixAsmProgramming] ↓

↑ [ArtOfAsm]:     The Art Of Assembly
Category: Assembly and linking tutorials
Description: The place to learn Assembly
Format: HTML+PDF
Producent: Randall Hyde
URL http://www.plantation-productions.com/Webster/www.artofasm.com/index.html
↑ [BasicPractices]:     40 Basic Practices in Assembly Language Programming
Category: Assembly and linking tutorials
Description: Hints for MASM
Format: HTML
Producent: Zuoliu Ding
URL https://www.codeproject.com/Articles/1116188/Basic-Practices-in-Assembly-Language-Programming
↑ [GoTools]:     Programming for MS Windows in assembler
Category: Assembly and linking tutorials
Description: Assembly programming in 32bit and 64bit Windows.
Format: HTML
Producent: Jeremy Gordon
URL http://www.godevtool.com/
↑ [GreatCode]:     Write Great Code
Category: Assembly and linking tutorials
Description: A Solid Foundation in Software Engineering for Programmers
Format: PDF
Producent: Randall Hyde
URL http://www.plantation-productions.com/Webster/www.writegreatcode.com/index.html
↑ [GreatDebate]:     The Great Debate
Category: Assembly and linking tutorials
Description: Do Compilers Produce Code as Good as Humans?
Format: HTML
Producent: Randall Hyde
URL http://net.pku.edu.cn/~course/cs201/2003/mirrorWebster.cs.ucr.edu/Page_asm/GreatDebate/GreatDebate.html
↑ [Iczelion]:     Win32 Assembly Tutorials
Category: Assembly and linking tutorials
Format: HTML
Producent: Iczelion
URL http://win32assembly.programminghorizon.com/tutorials.html
↑ [Linkers]:     Linkers and Loaders
Category: Assembly and linking tutorials
Format: HTML
Producent: John R. Levine
URL https://linker.iecc.com/
↑ [LinuxAsmHowto]:     Linux Assembly HOWTO
Category: Assembly and linking tutorials
Description: Document describes how to program in assembly language using free programming tools.
Format: HTML
Producent: Leo Noordergraaf
URL http://asm.sourceforge.net/howto/Assembly-HOWTO.html
↑ [ProgrammingOptimisation]:     Programming Optimization
Category: Assembly and linking tutorials
Description: Program performance optimization
Format: HTML
Producent: Paul Hsieh
URL http://www.azillionmonkeys.com/qed/optimize.html
↑ [Skeleton]:     Skeleton of Windows programs.
Category: Assembly and linking tutorials
Format: ZIP
Producent: Wayne J. Radburn
URL http://wjradburn.com/software/
↑ [SoftwareOptimisation]:     Software Optimization resources
Category: Assembly and linking tutorials
Description: An optimization guide for assembly programmers, throughputs,calling conventions.
Format: PDF
Producent: Agner Fog
URL https://www.agner.org/optimize/
↑ [UnixAsmProgramming]:     Introduction to UNIX assembly programming
Category: Assembly and linking tutorials
Description: A tutorial, showing how to write a simple assembly program in several UNIX operating systems.
Format: HTML
Producent: Leo Noordergraaf
URL http://asm.sourceforge.net/intro/Assembly-Intro.html

↑ Assembly projects

[AVRASM] ↓

[easm] ↓

[FASM] ↓

[GoASM] ↓

[HLA] ↓

[HLASM] ↓

[JWasm] ↓

[LASM] ↓

[LZASM] ↓

[MASM] ↓

[NASM] ↓

[NBASM] ↓

[POASM] ↓

[RosASM] ↓

[Sol_ASM] ↓

[TASM] ↓

[UASM] ↓

[WASM] ↓

[YASM] ↓

[€ASM] ↓

↑ [AVRASM]:     AVR Assembler
Category: Assembly projects
Platform: AVR/Atmel microcontrollers
Format: HTML
Producent: Atmel Corporation
Version: Rev.: #####X-MCU-04/2015
URL https://www.microchip.com/webdoc/avrassembler/index.html
↑ [easm]:     The Win32 Epsilon Assembler
Category: Assembly projects
Platform: Intel® IA-32
Format: HTML
Producent: Martin
Version: 2007
URL http://www.asmcommunity.net/forums/topic/?id=25898
↑ [FASM]:     Flat Assembler
Category: Assembly projects
Platform: Intel® 64 and IA-32
Format: HTML
Producent: Tomasz Grysztar
URL http://flatassembler.net/
↑ [GoASM]:     Gordon Assembler
Category: Assembly projects
Platform: Intel® 64 and IA-32
Format: HTML
Producent: Jeremy Gordon
Version: Last update 26th August 2017
URL http://www.godevtool.com/#assembler
↑ [HLA]:     High Level Assembly
Category: Assembly projects
Platform: Intel® 64 and IA-32
Format: HTML
Producent: Randall Hyde
URL http://www.plantation-productions.com/Webster/HighLevelAsm/
↑ [HLASM]:     IBM High Level Assembler
Category: Assembly projects
Platform: IBM System/360
Format: PDF
Producent: IBM
Version: 8C20-1646-6 August 1970
URL http://bitsavers.trailing-edge.com/pdf/ibm/360/asm/SC20-1646-6_int360asm_Aug70.pdf
↑ [JWasm]:     JW Assembler
Category: Assembly projects
Platform: Intel® IA-16
Format: HTML
Producent: Andreas Grech
URL http://www.japheth.de/JWasm.html
↑ [LASM]:     Light Macro Assembler
Category: Assembly projects
Platform: Intel® IA-32
Format: HTML
Producent: Tama Software Ltd.
Version: 2.35F
URL http://www.tamasoft.co.jp/lasm/index-e.html
↑ [LZASM]:     Lazy Assembler
Category: Assembly projects
Platform: Intel® IA-32
Producent: Stepan Polovnikov
Version: 0.56 (6 AUG 2007)
URL http://www.phatcode.net/downloads.php?id=308
↑ [MASM]:     The Microsoft Macro Assembler
Category: Assembly projects
Platform: Intel® IA-32
Producent: Microsoft
Version: 8.0 6/7/2006
URL http://www.microsoft.com/en-us/download/details.aspx?id=12654
↑ [NASM]:     Netwide Assembler
Category: Assembly projects
Platform: Intel® 64 and IA-32
Producent: Simon Tatham and Julian Hall
Version: 2.13.02
URL https://www.nasm.us/
↑ [NBASM]:     NewBasic Assembler
Category: Assembly projects
Platform: Intel® IA-16
Producent: Benjamin David Lunt
↑ [POASM]:     PO Assembler
Category: Assembly projects
Platform: Intel® 64 and IA-32
Producent: Pelle Orinius
Version: 8.0
URL http://www.smorgasbordet.com/pellesc/download.htm
↑ [RosASM]:     Bottom-Up Assembler
Category: Assembly projects
Platform: Intel® and IA-32
Producent: Renè betov Tournois
↑ [Sol_ASM]:     Solar Assembler
Category: Assembly projects
Platform: Intel® 64 and IA-32
Producent: Bogdan Valentin Ontanu
Version: 8.0 6/7/2006
URL http://oby.ro/sol_asm/
↑ [TASM]:     Turbo Assembler
Category: Assembly projects
Platform: Intel® IA-16
Producent: Borland International
Version: 2.01
URL http://trimtab.ca/2010/tech/tasm-5-intel-8086-turbo-assembler-download/
↑ [UASM]:     U Assembler
Category: Assembly projects
Platform: Intel® 64 and IA-32
Description: A free MASM-compatible assembler based on JWasm.
Producent: John Hankinson, Branislav Habus
Version: 2.46
URL http://www.terraspace.co.uk/uasm.html
↑ [WASM]:     Wolfware Assembler
Category: Assembly projects
Platform: Intel® 8086
Producent: Eric Tauck, Wolfware Programs
Version: 2.01, February 1987
↑ [YASM]:     The Yasm Modular Assembler Project
Category: Assembly projects
Platform: Intel® 64 and IA-32
Producent: Peter Johnson
Version: 1.3.0
URL http://yasm.tortall.net/
↑ [€ASM]:     EuroAssembler
Category: Assembly projects
Platform: Intel® 64 and IA-32, Xeon Phi
Producent: Pavel vitsoft Šrubař
URL https://euroassembler.eu/

↑ File format specifications

[BootSec] ↓

[COFFlib] ↓

[COFFRelocTypes] ↓

[MS_PECOFF] ↓

[MZ] ↓

[MZEXE] ↓

[OMF] ↓

[RC] ↓

[RSRC] ↓

↑ [BootSec]:     Boot sector
Category: File format specifications
Description: Structure of volume boot sector and BIOS parameter block (BPB).
Format: HTML
Producent: Microsoft
URL https://technet.microsoft.com/en-us/library/cc976796.aspx
Errata

1. In Table 1.10 BPB Fields for FAT32 Volumes instead of
0x34 WORD 0x0600 Backup Boot Sector (FAT32 only) should be
0x32 WORD 0x0600 Backup Boot Sector (FAT32 only)

2. In Table 1.10 BPB Fields for FAT32 Volumes instead of
0x36 12 bytes Reserved (FAT32 only) should be
0x34 12 bytes Reserved (FAT32 only)

↑ [COFFlib]:     Archive (Library) File Format
Category: File format specifications
Description: Structure of COFF library file format.
Format: HTML
Producent: Microsoft
URL https://msdn.microsoft.com/library/windows/desktop/ms680547%28v=vs.85%29.aspx?id=19509#archive__library__file_format
↑ [COFFRelocTypes]:     Relocation types in COFF
Category: File format specifications
Description: Relocation types in PFCOFF_RELOCATION objects.
Format: HTML
Producent: Microsoft
URL https://docs.microsoft.com/en-us/windows/desktop/Debug/pe-format#type-indicators
↑ [MS_PECOFF]:     PE & COFF
Category: File format specifications
Description: Microsoft Portable Executable and Common Object File Format specification.
Format: PDF
Producent: Microsoft
Version: Rev 11, May 2017
URL https://msdn.microsoft.com/library/windows/desktop/ms680547%28v=vs.85%29.aspx?id=19509
↑ [MZ]:     The MZ EXE File Format
Category: File format specifications
Description: Structure of DOS executable files.
Format: TXT
URL http://www.fileformat.info/format/exe/corion-mz.htm
↑ [MZEXE]:     EXE Format
Category: File format specifications
Description: Structure of DOS executable files.
Format: TXT
Producent: DJ Delorie
Version: Sep 2010
URL http://www.delorie.com/djgpp/doc/exe/
↑ [OMF]:     RELOCATABLE OBJECT MODULE FORMAT
Category: File format specifications
Description: Structure of OMF object files and library files.
Format: ZIP
Producent: Microsoft
Version: SS0288 Revision Date: 5/92
URL http://ftp.lanet.lv/ftp/mirror/x2ftp/msdos/programming/formats/ss0288.zip
↑ [RC]:     MS Windows Resource Files
Category: File format specifications
Description: MS Windows resource text definition format.
Format: HTML
Producent: Microsoft
URL https://msdn.microsoft.com/en-us/library/windows/desktop/aa380599%28v=vs.85%29.aspx
↑ [RSRC]:     Win32 Binary ResourceFormats
Category: File format specifications
Description: MS Windows compiled resource format.
Format: TXT
Producent: Floyd Rogers, Microsoft
URL https://github.com/gunmetal313/disasmbackups/blob/master/dewin19/RESFMT.TXT

↑ Instruction specifications from CPU vendors

[AMDMan] ↓

[AMDVol3] ↓

[AMDVol4] ↓

[AMDVol5] ↓

[AMDVol6] ↓

[AMD3DNow] ↓

[AMDGeode] ↓

[AMDSSE5] ↓

[Cyrix686] ↓

[Cyrix686ap] ↓

[IntelAVX512] ↓

[IntelVol2] ↓

[IntelVol3] ↓

[IntelMan] ↓

[IntelMVEX] ↓

↑ [AMDMan]:     AMD Manuals download page
Category: Instruction specifications from CPU vendors
Description: Links to AMD64 Architecture Programmer's Manual.
Format: HTML
Producent: AMD
URL https://support.amd.com/en-us/search/tech-docs#k=Programmer%27s%20Manual
↑ [AMDVol3]:     AMD64 Architecture Programmer's Manual Volume 3
Category: Instruction specifications from CPU vendors
Description: General-Purpose and System Instructions.
Format: PDF
Producent: AMD
Version: 24594 3.22 June 2015
URL https://support.amd.com/TechDocs/24594.pdf
↑ [AMDVol4]:     AMD64 Architecture Programmer's Manual Volume 4
Category: Instruction specifications from CPU vendors
Description: 128-Bit and 256-Bit Media Instructions.
Format: PDF
Producent: AMD
Version: 26568 3.19 June 2015
URL https://support.amd.com/TechDocs/26568.pdf
↑ [AMDVol5]:     AMD64 Architecture Programmer's Manual Volume 5
Category: Instruction specifications from CPU vendors
Description: 64-Bit Media and x87 Floating-Point Instructions.
Format: PDF
Producent: AMD
Version: 26569 3.13 May 2013
URL https://support.amd.com/TechDocs/26569_APM_v5.pdf
↑ [AMDVol6]:     AMD64 Architecture Programmer's Manual Volume 6
Category: Instruction specifications from CPU vendors
Description: 128-Bit and 256-Bit XOP and FMA4 Instructions.
Format: PDF
Producent: AMD
Version: 43479 3.04 November 2009
URL https://support.amd.com/TechDocs/43479.pdf
↑ [AMD3DNow]:     3DNow! Technology Manual
Category: Instruction specifications from CPU vendors
Format: PDF
Producent: AMD
Version: March 2000
URL https://support.amd.com/TechDocs/21928.pdf
↑ [AMDGeode]:     AMD Geode LX Processors Data Book
Category: Instruction specifications from CPU vendors
Format: PDF
Producent: AMD
Version: February 2009
URL https://support.amd.com/TechDocs/33234H_LX_databook.pdf
↑ [AMDSSE5]:     AMD 128-Bit SSE5 Instruction Set
Category: Instruction specifications from CPU vendors
Description: AMD64 Technology 128-Bit SSE5 Instruction Set (deprecated)
Format: PDF
Producent: AMD
Version: August 2007
URL http://pdinda.org/icsclass/doc/AMD_ARCH_MANUALS/AMD64_128_Bit_SSE5_Instrs.pdf
↑ [Cyrix686]:     Cyrix 6x86 PROCESSOR.
Category: Instruction specifications from CPU vendors
Description: Superscalar, Superpipelined, Sixth-generation, x86 Compatible CPU
Format: PDF
Producent: Cyrix
Version: July 15, 1997 3:24, Updated 5/13/98
URL http://datasheets.chipdb.org/Cyrix/M1/6x86/M1-1.PDF
↑ [Cyrix686ap]:     Cyrix Application Note 106
Category: Instruction specifications from CPU vendors
Description: Software Customization for the 6x86 Family
Format: PDF
Producent: Cyrix
Version: Rev 1.5
URL http://datasheets.chipdb.org/Cyrix/M1/6x86/106ap.pdf
↑ [IntelAVX512]:     Intel® Architecture Instruction Set Extensions Programming Reference
Category: Instruction specifications from CPU vendors
Description: EVEX-encodable AVX-512, SHA, MPX instructions.
Format: PDF
Producent: Intel®
Version: 319433-024 FEBRUARY 2016
URL https://software.intel.com/sites/default/files/managed/b4/3a/319433-024.pdf
Errata

1. On page 5-52 (VPBROADCAST) instead of
EVEX.512.66.0F38.W1 5B /r
VBROADCASTI32X8 zmm1 {k1}{z}, m256
should be
EVEX.512.66.0F38.W0 5B /r
VBROADCASTI32X8 zmm1 {k1}{z}, m256

2. On page 5-100 (instruction CVTDQ2PD) columns Instruction and Description instead of
VCVTDQ2PD xmm1 {k1}{z},xmm2/m128/m32bcst Convert 2 packed signed doubleword integers from xmm2/m128/m32bcst to eight should be
VCVTDQ2PD xmm1 {k1}{z},xmm2/m64/m32bcst Convert 2 packed signed doubleword integers from xmm2/m128/m32bcst to two

3. On page 5-120 (VCVTPH2PS) column Opcode instead of
1313 /r should be
13 /r

4. On page 5-123 (VCVTPS2PH) column Opcode instead of
1D1D /r ib should be
1D /r ib

5. On page 5-164 instead of
VCVTTPD2UDQ EVEX.256.0F.W1 78 02 /r should be
VCVTTPD2UDQ EVEX.256.0F.W1 78 /r

6. On page 5-175 column Description of VCVTTPS2UQQ xmm1,xmm2 instead of
from zmm2/m64/m32bcst should be
from xmm2/m64/m32bcst

7. On page 5-194 VCVTUSI2SS column Description instead of
Convert one signed doubleword integer should be
Convert one unsigned doubleword integer

8. On page 5-295 VFNMADD132PD column Opcode instead of
EVEX.NDS.128.66.0F38.W1 9C /r
VFNMADD132PD xmm0 {k1}{z}, xmm1, xmm2/m128/m64bcst
should be
EVEX.NDS.128.66.0F38.W1 9C /r
VFNMADD132PD xmm1 {k1}{z}, xmm2, xmm3/m128/m64bcst

9. On page 5-320 VFNMSUB231PS column Opcode instead of
VEX.NDS.256.66.0F38.0 BE /r
VFNMSUB231PS ymm1, ymm2, ymm3/m256
should be
VEX.NDS.256.66.0F38.W0 BE /r
VFNMSUB231PS ymm1, ymm2, ymm3/m256

10. On page 5-339 VFPCLASSSS column Opcode instead of
EVEX.LIG.66.0F3A.W0 67 /r
VFPCLASSSS k2 {k1}, xmm2/m32, imm8
should be
EVEX.LIG.66.0F3A.W0 67 /r ib
VFPCLASSSS k2 {k1}, xmm2/m32, imm8

11. On pages 5-332, 5-335, 5-337, 5-339 VFPCLASS** in frame Instruction Operand Encoding in column Operand3 instead of
Operand 3 NA should be
Operand 3 Imm8

12. On page 5-371 and 5-373 VGETMANTSD and VGETMANTSS in frame Instruction Operand Encoding in column Operand4 instead of
Operand 4 NA should be
Operand 4 Imm8

13. On page 5-414 in column Op/En of operations
MOVD xmm1, r32/m32
MOVQ xmm1, r64/m64
VMOVD xmm1, r32/m32
VMOVQ xmm1, r64/m64
instead of
MR should be
RM

14. On page 5-429 instead of
VMOVDQU32 xmm1 {k1}{z}, xmm2/mm128 should be
VMOVDQU32 xmm1 {k1}{z}, xmm2/m128

15. On page 5-471 VMOVUPS instead of
VEX.128.0F 11.WIG /r
VEX.256.0F 10.WIG /r
VEX.256.0F 11.WIG /r
should be
VEX.128.0F.WIG 11 /r
VEX.256.0F.WIG 10 /r
VEX.256.0F.WIG 11 /r

16. On page 5-542 instead of
VEX.NDS.128.66.0F E0
VPAVGB xmm1, xmm2, xmm3/m128
VEX.NDS.128.66.0F E3

VPAVGW xmm1, xmm2, xmm3/m128
VEX.NDS.256.66.0F E0
VPAVGB ymm1, ymm2, ymm3/m256
VEX.NDS.256.66.0F E3
VPAVGW ymm1, ymm2, ymm3/m256
should be
VEX.NDS.128.66.0F E0 /r
VPAVGB xmm1, xmm2, xmm3/m128
VEX.NDS.128.66.0F E3 /r
VPAVGW xmm1, xmm2, xmm3/m128
VEX.NDS.256.66.0F E0 /r
VPAVGB ymm1, ymm2, ymm3/m256
VEX.NDS.256.66.0F E3 /r
VPAVGW ymm1, ymm2, ymm3/m256

17. On page 5-689 in column Op/En of instructions VPMOVQD, VPMOVSQD, VPMOVUSQD instead of
Op/En A should be
Op/En HVM

18. On page 5-802 in column Op/En of instructions
VPSRLQ xmm1 {k1}{z}, xmm2/m128/m64bcst, imm8
VPSRLQ ymm1 {k1}{z}, ymm2/m256/m64bcst, imm8
instead of
FV should be
FVI

19. On page 5-873 in column Instruction instead of
VSQRTPD xmm1 {k1}{z}, xmm2/m128/m32bcst
VSQRTPD ymm1 {k1}{z}, ymm2/m256/m32bcst
should be
VSQRTPD xmm1 {k1}{z}, xmm2/m128/m64bcst
VSQRTPD ymm1 {k1}{z}, ymm2/m256/m64bcst

20. On page 5-921 in column Instruction instead of
EVEX.NDS.LIG.66.0F3A.W1 57 /r
VREDUCESD xmm1 {k1}{z}, xmm2, xmm3/m64{sae}, imm8
should be
EVEX.NDS.LIG.66.0F3A.W1 57 /r ib
VREDUCESD xmm1 {k1}{z}, xmm2, xmm3/m64{sae}, imm8

21. On page 5-921 (instruction VREDUCESD) in frame Instruction Operand Encoding instead of
Operand4 NA should be
Operand4 Imm8

22. On page IV of INDEX there is no such instruction on pages 5-562, 5-571. Specification of PCLMULQDQ also mentioned on page 2-27 is missing.
PCLMULQDQ - Carry-Less Multiplication Quadword 5-562, 5-571

↑ [IntelVol2]:     Intel® 64 and IA-32 Architectures Software Developer's Manual Volume 2: Instruction Set Reference, A-Z.
Category: Instruction specifications from CPU vendors
Description: Intel basic instruction set description.
Format: PDF
Producent: Intel®
Version: Order Number: 325383-058US April 2016
URL https://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-instruction-set-reference-manual-325383.pdf
Errata

1. On page 3-530 Vol.2A (instruction MOV—Move) instead of
REX.W + 8C /r MOV r/m64,Sreg** MR Valid Valid should be
REX.W + 8C /r MOV r/m64,Sreg** MR Valid N.E

2. On page 3-530 Vol.2A (instruction MOV—Move) instead of
REX.W + C7 /0 io MOV r/m64, imm32 should be
REX.W + C7 /0 id MOV r/m64, imm32

3. On page 4-184 Vol.2B and on page 4-272 Vol.2B (instruction POP) paragraph Description incorrecly suggests that operand-size of POP and PUSH can be overriden by prefix REX.W:
Operand size. The D flag in the current code-segment descriptor determines the default operand size; it may be overridden by instruction prefixes (66H or REX.W). should be
Operand size. The D flag in the current code-segment descriptor determines the default operand size; it may be overridden by instruction prefix (66H).

↑ [IntelVol3]:     Intel® 64 and IA-32 Architectures Software Developer's Manual Combined Volumes 3A, 3B, 3C, and 3D: System Programming Guide
Category: Instruction specifications from CPU vendors
Description: System Programming Guide.
Format: PDF
Producent: Intel®
Version: Order Number: 25384-067US May 2018
URL https://software.intel.com/sites/default/files/managed/a4/60/325384-sdm-vol-3abcd.pdf
Errata

1. On page 30-3 Vol.3C (instruction INVEPT) instead of
66 0F 38 80 INVEPT r64, m128 should be
66 0F 38 80 /r INVEPT r64, m128

2. On page 30-3 Vol.3C (instruction INVEPT) instead of
66 0F 38 80 INVEPT r32, m128 should be
66 0F 38 80 /r INVEPT r32, m128

3. On page 30-6 Vol.3C (instruction INVVPID) instead of
66 0F 38 81 INVVPID r64, m128 should be
66 0F 38 81 /r INVVPID r64, m128

4. On page 30-6 Vol.3C (instruction INVVPID) instead of
66 0F 38 81 INVVPID r32, m128 should be
66 0F 38 81 /r INVVPID r32, m128

5. On page 30-13 Vol.3C (instruction VMFUNC) instead of
NP 0F 01 D4 VMFUNC should be
0F 01 D4 VMFUNC

6. On page 30-16 Vol.3C (instruction VMPTRLD) instead of
NP 0F C7 /6 VMPTRLD m64 should be
0F C7 /6 VMPTRLD m64

7. On page 30-18 Vol.3C (instruction VMPTRST) instead of
NP 0F C7 /7 VMPTRST m64 should be
0F C7 /7 VMPTRST m64

8. On page 30-20 Vol.3C (instruction VMREAD) instead of
NP 0F 78 VMREAD r/m64,r64 should be
0F 78 /r VMREAD r/m64,r64

9. On page 30-20 Vol.3C (instruction VMREAD) instead of
NP 0F 78 VMREAD r/m32,r32 should be
0F 78 /r VMREAD r/m32,r32

10. On page 30-23 Vol.3C (instruction VMWRITE) instead of
NP 0F 79 VMWRITE r/m64,r64 should be
0F 79 /r VMWRITE r/m64,r64

11. On page 30-23 Vol.3C (instruction VMWRITE) instead of
NP 0F 79 VMWRITE r/m32,r32 should be
0F 79 /r VMWRITE r/m32,r32

12. The shortcut NP used many times in Opcode column is not explained on page 3-2 Vol.2A 3.1.1.1 Summary

↑ [IntelMan]:     Architectures Software Developer Manuals
Category: Instruction specifications from CPU vendors
Description: Intel Manuals download page contains links to Intel 64 and IA-32 Architectures Software Developer Manuals.
Format: HTML
Producent: Intel®
URL https://software.intel.com/en-us/articles/intel-sdm
↑ [IntelMVEX]:     Intel® Xeon Phi Coprocessor Instruction Set Architecture Reference
Category: Instruction specifications from CPU vendors
Description: MVEX-encodable Intel instruction set. Now outclassed with EVEX-encodable AVX-512 instructions.
Format: PDF
Producent: Intel®
Version: Manual Reference Number: 327364-001 September 7, 2012
URL https://software.intel.com/sites/default/files/forum/278102/327364001en.pdf

↑ Instruction specifications from other sources

[Geode] ↓

[ATTsyntax] ↓

[Bugs86] ↓

[D3Now] ↓

[FCx86] ↓

[LockBug] ↓

[NasmInsns] ↓

[ObsoleteBTS] ↓

[OpcodesList] ↓

[PentiumBug] ↓

[Redundancy] ↓

[Refx86asm] ↓

[RoseCompiler] ↓

[Sandpile] ↓

[SoftpixelSIMD] ↓

[SOx86] ↓

↑ [Geode]:     Geode instruction set
Category: Instruction specifications from other sources
Format: HTML
Producent: Wikipedia
URL http://wiki.laptop.org/go/Geode_instruction_set
↑ [ATTsyntax]:     AT&T Syntax versus Intel Syntax
Category: Instruction specifications from other sources
Format: HTML
Producent: Sourceware.org
URL https://www.sourceware.org/binutils/docs-2.12/as.info/i386-Syntax.html
↑ [Bugs86]:     86BUGS.LST
Category: Instruction specifications from other sources
Description: Undocumented and buggy instructions of the Intel 80x86 family of processors.
Format: TXT
Producent: Harald Feldmann
Version: Last Change 7/17/93.Revision 1.0
URL https://textfiles.meulie.net/computers/86bugs.lst
↑ [D3Now]:     3DNow!
Category: Instruction specifications from other sources
Description: Enhancement to the MMX instruction set by AMD, now obsolete.
Format: HTML
Producent: Wikipedia
URL https://en.wikipedia.org/wiki/3DNow%21
↑ [FCx86]:     x86 Instruction Set Reference
Category: Instruction specifications from other sources
Description: x86 instructions converted from PDF to HTML format.
Format: HTML
Producent: Felix zneak Cloutier
URL http://www.felixcloutier.com/x86/
↑ [LockBug]:     LOCK prefix bug
Category: Instruction specifications from other sources
Description: LOCK prefix encoded by masm to an invalid instruction.
Format: HTML
Producent: Microsoft
URL https://connect.microsoft.com/VisualStudio/feedback/details/738878
↑ [NasmInsns]:     Table of instructions for the Netwide Assembler
Category: Instruction specifications from other sources
Description: Structured reference and features of x86-64 instructions.
Format: TXT
Producent: The NASM Authors
URL https://github.com/ncoden/NASM/blob/master/insns.dat
↑ [ObsoleteBTS]:     Obsolete 80386 Instructions
Category: Instruction specifications from other sources
Description: Information on the 80386 opcodes (IBTS and XBTS) that were removed from the 80386 as of the B1 stepping.
Format: HTML
Producent: Jeff Parsons
URL https://www.pcjs.org/pubs/pc/reference/intel/80386/ibts_xbts/
↑ [OpcodesList]:     Instruction opcodes
Category: Instruction specifications from other sources
Description: Incomplete opcode list, including a few obsolete and undocumented instructions.
Format: TXT
Producent: InternetNightmare
URL http://asm.inightmare.org/opcodelst/index.php
↑ [PentiumBug]:     Pentium F00F Bug
Category: Instruction specifications from other sources
Description: The Intel Pentium F00F Bug: Description and Workarounds.
Format: HTML
Producent: Robert R. Collins
URL http://www.rcollins.org/Errata/Dec97/F00FBug.html
↑ [Redundancy]:     Redundancy of x86 Machine Code
Category: Instruction specifications from other sources
Format: HTML
Producent: Peter Kankowski
URL https://www.strchr.com/machine_code_redundancy
↑ [Refx86asm]:     x86-64 Opcode and Instruction Reference
Category: Instruction specifications from other sources
Description: Structured reference and encoding of x86-64 instructions.
Format: XML
Producent: Karel mazegen Lejska
URL http://ref.x86asm.net/
↑ [RoseCompiler]:     Undocumented instructions
Category: Instruction specifications from other sources
Format: TXT
Producent: ROSE
URL https://github.com/rose-compiler/rose/blob/master/src/frontend/Disassemblers/ExtraInstructions.txt
↑ [Sandpile]:     x86 processor technical information.
Category: Instruction specifications from other sources
Description: Encoding of x86 instructions.
Format: HTML
Producent: Christian Ludloff
URL http://www.sandpile.org/
↑ [SoftpixelSIMD]:     SIMD Instruction Sets
Category: Instruction specifications from other sources
Description: Single Instruction Multiple Data SSE4.2, AVX, AES
Format: HTML
Producent: Christopher Wright
URL http://softpixel.com/~cwright/programming/simd/
↑ [SOx86]:     x86 tag on StackOverflow
Category: Instruction specifications from other sources
Description: Signpost to many useful resources concerning x32-64 assembly.
Format: HTML
Producent: Kyle Cronin
URL https://stackoverflow.com/tags/x86/info

↑ Operating systems interfaces

[CallingConv] ↓

[CPUmodes] ↓

[DosDriver] ↓

[TechHelp] ↓

[IntList] ↓

[LinMan] ↓

[LinManSyscall] ↓

[LinSyscall32] ↓

[LinSyscall64] ↓

[LinSyscall64S] ↓

[LinSysCallsGuide] ↓

[SystemV] ↓

[WindowsAPI] ↓

[WinAPIref] ↓

[WinABI64] ↓

[MSx64Conv] ↓

[VectorConv] ↓

[WindowsSDK] ↓

[WinDllSearchOrder] ↓

↑ [CallingConv]:     x86 calling conventions
Category: Operating systems interfaces
Format: HTML
URL https://en.wikipedia.org/wiki/X86_calling_conventions
↑ [CPUmodes]:     The Real, Protected, Long mode assembly tutorial for PCs
Category: Operating systems interfaces
Format: HTML
Producent: Michael Chourdakis
URL https://www.codeproject.com/Articles/45788/The-Real-Protected-Long-mode-assembly-tutorial-for
↑ [DosDriver]:     Writing MS-DOS Device Drivers
Category: Operating systems interfaces
Description: Format of drivers in DOS.
Format: HTML
Producent: Marcus Johnson
Version: December 01, 1990
URL http://www.drdobbs.com/writing-ms-dos-device-drivers/184402277
↑ [TechHelp]:     Tech Help!
Category: Operating systems interfaces
Description: Reference of BIOS+DOS services and structures.
Format: HTML
Producent: Dan Rollins
URL http://www.techhelpmanual.com
↑ [IntList]:     Interrupt List
Category: Operating systems interfaces
Description: Reference of BIOS+DOS services invoked by INT.
Format: HTML
Producent: Ralph Brown
URL http://www.ctyme.com/intr/int.htm
↑ [LinMan]:     Linux Man pages online
Category: Operating systems interfaces
Description: Manual to Linux commands.
Format: HTML
URL http://man.he.net/
↑ [LinManSyscall]:     Linux system calls
Category: Operating systems interfaces
Description: Description of Ubuntu system calls.
Format: HTML
Version: 2017-09-25
URL http://manpages.ubuntu.com/manpages/cosmic/man2/syscalls.2.html
↑ [LinSyscall32]:     Linux Syscall 32bit Reference for IA-86
Category: Operating systems interfaces
Description: Reference 32bit Linux kernel functions.
Format: HTML
Producent: Greg Ose
URL https://syscalls.kernelgrok.com/
↑ [LinSyscall64]:     Linux Syscall 64bit Reference for x86-64
Category: Operating systems interfaces
Description: Reference 64bit Linux kernel functions.
Format: HTML
Producent: Ryan A. Chapman
URL http://blog.rchapman.org/posts/Linux_System_Call_Table_for_x86_64/
↑ [LinSyscall64S]:     Searchable Linux Syscall Table for x86 and x86_64
Category: Operating systems interfaces
Description: Linux kernel functions table with link to source text.
Format: HTML
Producent: Filippo Valsorda
URL https://filippo.io/linux-syscall-table/
↑ [LinSysCallsGuide]:     The Definitive Guide to Linux System Calls
Category: Operating systems interfaces
Description: This blog post explains how Linux programs call functions in the Linux kernel.
Format: HTML
URL https://blog.packagecloud.io/eng/2016/04/05/the-definitive-guide-to-linux-system-calls/
↑ [SystemV]:     System V ABI AMD64 Architecture Processor Supplement
Category: Operating systems interfaces
Description: Implementation of C programming interface on AMD64 architecture.
Format: PDF
Producent: H.J. Lu, Michael Matz, Milind Girkar, Jan Hubicka, Andreas Jaeger, Mark Mitchell
Version: 1.0 January 28, 2018
URL https://github.com/hjl-tools/x86-psABI/wiki/x86-64-psABI-1.0.pdf
↑ [WindowsAPI]:     Windows API Index
Category: Operating systems interfaces
Description: Reference of Windows Application Programming Interface functions.
Format: HTML
Producent: Microsoft
URL https://msdn.microsoft.com/en-us/library/windows/desktop/ff818516%28v=vs.85%29.aspx
↑ [WinAPIref]:     Windows API Reference: Functions
Category: Operating systems interfaces
Description: Aplhabetical references of Windows API functions.
Format: HTML
Producent: Paul Kuliniewicz
URL http://www.jasinskionline.com/windowsapi/ref/funca.html
↑ [WinABI64]:     x64 Application Binary Interface
Category: Operating systems interfaces
Description: MS implementation of 64bit calling convention.
Format: HTML
Producent: Microsoft
URL https://msdn.microsoft.com/en-us/library/ms235286.aspx
↑ [MSx64Conv]:     Microsoft x64 calling convention
Category: Operating systems interfaces
Description: MS implementation of 64bit calling convention.
Format: HTML
Producent: Microsoft
URL https://en.wikipedia.org/wiki/X86_calling_conventions#Microsoft_x64_calling_convention
↑ [VectorConv]:     Microsoft vector calling convention
Category: Operating systems interfaces
Description: Introducing of 'Vector calling convention'.
Format: HTML
Producent: Microsoft
URL https://blogs.msdn.microsoft.com/vcblog/2013/07/11/introducing-vector-calling-convention/
↑ [WindowsSDK]:     Windows SDK archive
Category: Operating systems interfaces
Description: Software Developer Kit for MS Windows.
Format: Executable installer
Producent: Microsoft
URL https://developer.microsoft.com/en-us/windows/downloads/sdk-archive
↑ [WinDllSearchOrder]:     Dynamic-Link Library Search Order
Category: Operating systems interfaces
Description: Rules how MS Windows searches for the DLL
Format: HTML
Producent: Microsoft
URL https://msdn.microsoft.com/en-us/library/windows/desktop/ms682586%28v=vs.85%29.aspx

↑ Other specifications

[CodePageIANA] ↓

[CodePageMS] ↓

[CodePageIBM] ↓

[IEEE754] ↓

[Modulo] ↓

[Primality] ↓

[PSP] ↓

[RFC1321] ↓

[ShellSort] ↓

[Unicode] ↓

[UniCodePoint] ↓

[UTF8] ↓

[UTF16] ↓

[UTF32] ↓

↑ [CodePageIANA]:     Character Set names
Category: Other specifications
Description: Official names for character sets. See also RFC2978.
Format: HTML
Producent: IANA
Version: 2013-12-20
URL http://www.iana.org/assignments/character-sets/character-sets.xhtml
↑ [CodePageMS]:     Code Page Identifiers
Category: Other specifications
Description: Numeric identifiers and names used in Microsft products.
Format: HTML
Producent: Microsoft
URL https://msdn.microsoft.com/en-us/library/windows/desktop/dd317756%28v=vs.85%29.aspx
↑ [CodePageIBM]:     Code Page Identifiers
Category: Other specifications
Description: Numeric identifiers and names used in IBM products.
Format: HTML
Producent: IBM
URL https://www-01.ibm.com/software/globalization/ccsid/ccsid_registered.html
↑ [IEEE754]:     Standard for Floating-Point Arithmetic
Category: Other specifications
Description: Representation of numbers in computing.
Format: HTML
Producent: IEEE
Version: August 2008
URL https://en.wikipedia.org/wiki/IEEE_floating_point
↑ [Modulo]:     Modulo operation
Category: Other specifications
Description: Description of the modulo operation.
Format: HTML
URL https://en.wikipedia.org/wiki/Modulo_operation
↑ [Primality]:     Primality test
Category: Other specifications
Description: An algorithm for determining whether an input number is prime.
Format: HTML
URL https://en.wikipedia.org/wiki/Primality_test
↑ [PSP]:     Program Segment Prefix
Category: Other specifications
Description: A data structure used in DOS systems to store the state of a program.
Format: HTML
URL https://en.wikipedia.org/wiki/Program_Segment_Prefix
↑ [RFC1321]:     The MD5 Message-Digest Algorithm
Category: Other specifications
Format: TXT,PDF
Version: April 1992
URL http://www.rfc-base.org/rfc-1321.html
↑ [ShellSort]:     Shell sort algorithm description.
Category: Other specifications
Format: HTML
URL https://en.wikipedia.org/wiki/Shellsort
↑ [Unicode]:     Unicode Character Code Charts
Category: Other specifications
Description: Code and Glyphs of Unicode characters.
Format: PDF
Producent: The Unicode Consortium
Version: 10.0
URL http://www.unicode.org/charts/
↑ [UniCodePoint]:     Unicode Character Search
Category: Other specifications
Description: Properties of Unicode characters.
Format: HTML
Producent: FileFormat,Info
URL http://www.fileformat.info/info/unicode/char/search.htm
↑ [UTF8]:     UTF-8 characters encoding
Category: Other specifications
Description: Algorithm and history of UTF-8 characters encoding.
Format: HTML
Producent: Ken Thompson and Rob Pike
Version: 10.0
URL https://en.wikipedia.org/wiki/UTF-8
↑ [UTF16]:     UTF-16 characters encoding
Category: Other specifications
Description: Algorithm and history of UTF-16 characters encoding.
Format: HTML
URL https://en.wikipedia.org/wiki/UTF-16
↑ [UTF32]:     UTF-32 characters encoding
Category: Other specifications
Description: Algorithm and history of UTF-32 characters encoding.
Format: HTML
URL https://en.wikipedia.org/wiki/UTF-16

↑ Useful tools

[ALIB] ↓

[ALINK] ↓

[GoRC] ↓

[MS_RC] ↓

[ODU] ↓

[OKDUMP] ↓

[OllyDbg] ↓

[PEview] ↓

[PSPad] ↓

[ResourceHacker] ↓

[TDUMP] ↓

[WinDBG] ↓

↑ [ALIB]:     A-Librarian
Category: Useful tools
Description: Creates import OMF library from a DLL.
Producent: Anthony A.J.Williams
Version: v1.1
URL http://alink.sourceforge.net/download.html
↑ [GoRC]:     Gordon Resource Compiler
Category: Useful tools
Description: A tool used to create RES and COFF files from resource script RC.
Producent: Jeremy Gordon
Version: 1.0.2.0
URL http://www.godevtool.com/#rc
↑ [MS_RC]:     Microsoft Resource Compiler
Category: Useful tools
Description: A tool used in building Windows-based applications.
Producent: Microsoft
URL https://msdn.microsoft.com/en-us/library/windows/desktop/aa381042(v=vs.85).aspx
↑ [ODU]:     Object dumper
Category: Useful tools
Description: User-friendly viewer of OMF and LIBOMF files.
Producent: V2.00 01-03-1996
Version: v1.6
↑ [OKDUMP]:     OKDump
Category: Useful tools
Description: Configurable hexadecimal dump of any file.
Producent: Pavel vitsoft Šrubař
Version: 2.00
URL http://vitsoft.info/okdump.htm
↑ [OllyDbg]:     OllyDbg
Category: Useful tools
Description: Debugger for 32bit PE,MZ,COM files.
Producent: Oleh Yuschuk
Version: 1.10
URL http://www.ollydbg.de/
↑ [PEview]:     PEview
Category: Useful tools
Description: User-friendly viewer of COFF, LIBCOF, PE files.
Producent: Wayne J. Radburn
Version: 0.9.9
URL http://wjradburn.com/software/
↑ [PSPad]:     PSPad
Category: Useful tools
Description: A freeware text editor with UTF-8 support and syntax highlight.
Producent: Jan Fiala
URL http://www.pspad.com/
↑ [ResourceHacker]:     Resource Hacker
Category: Useful tools
Description: A complete resource editing tool for both 32bit and 64bit Windows executables.
Producent: Angus Johnson
URL http://www.angusj.com/resourcehacker/
↑ [TDUMP]:     Turbo Dump
Category: Useful tools
Description: User-friendly viewer of OMF,LIBOMF,MZ,NE,BIN files.
Producent: Borland International
Version: v2.0
URL http://trimtab.ca/2010/tech/tasm-5-intel-8086-turbo-assembler-download/
↑ [WinDBG]:     Windows Debuggers
Category: Useful tools
Description: Debuggers for 32bit and 64bit Windows programs.
Producent: Microsoft
URL http://codemachine.com/downloads.html

▲Back to the top▲