This series of five manuals describes everything you need to know about optimizing code for Intel and AMD microprocessors, including optimization advices for C++ and assembly language, details about the microarchitecture and instruction timings of Intel and AMD processors, and details about different compilers and calling conventions.
Intel microprocessors covered: Intel Pentium 1 through Pentium 4, Pentium D, Pentium M, Core Duo, Core 2, etc., but not Itanium. AMD microprocessors covered: Athlon 64, Opteron. Operating systems covered: DOS, Windows, Linux, BSD, Mac OS X Intel based. Includes coverage of 64-bit systems.
Note that these manuals are not for beginners.