http://www.intel.com/products/processor/manuals/
Intel 64 and IA-32 Architectures Software Developer's Manual
Volume 1: Basic Architecture
Describes the architecture and programming environment of processors supporting IA-32 and Intel 64 Architectures.
Intel 64 and IA-32 Architectures Software Developer's Manual
Volume 2A: Instruction Set Reference, A-M
Describes the format of the instruction and provides reference pages for instructions (from A to M). This volume also contains the table of contents for both Volumes 2A and 2B.
Intel 64 and IA-32 Architectures Software Developer's Manual
Volume 2B: Instruction Set Reference, N-Z
Provides reference pages for instructions (from N to Z). VMX instructions are treated in a separate chapter. This volume also contains the appendices and index support for Volumes 2A and 2B.
Intel 64 and IA-32 Architectures Software Developer's Manual
Volume 3A: System Programming Guide, Part 1
Describes the operating-system support environment of an IA-32 and Intel 64 architectures, including: memory management, protection, task management, interrupt and exception handling, multi-processor support, and thermal and power management features. This volume also contains the table of contents for both Volumes 3A and 3B.
Intel 64 and IA-32 Architectures Software Developer's Manual
Volume 3B: System Programming Guide, Part 2
Continues the coverage on system programming subjects begun in Volume 3A. Volume 3B covers debugging, performance monitoring, system management mode, and Intel Virtualization Technology (Intel VT). This volume also contains the appendices and indexing support for Volumes 3A and 3B.