As someone who spent 3-4 years writing 8086 assembly code I'm getting a kick out of this. [xda-developers.com]
Regardless of whether you're on Intel or AMD, the first instruction your CPU executes runs in a mode designed for the 16-bit Intel 8086, released in June 1978. This is called "real mode," and despite everything that has changed about processors since then, this part of the startup process has remained remarkably similar.
Real mode, or real-address mode as Intel calls it, is the execution environment of the original 8086. Intel says that "To an 8086 program, a processor operating in real-address mode behaves like a high-speed 8086 processor." In this mode, registers are 16 bits wide, there's no memory protection and no paging, and memory is addressed by taking a 16-bit segment value, shifting it left by four bits, and adding a 16-bit offset to it. That gives you a 20-bit address and a nominal 1MB address space, which was plenty in 1978 and is tiny by any modern standard.
When an x86 processor powers up, or when its reset pin is asserted, its registers are set to a known state and the CPU goes into real mode. The reset table for Intel's current processors have the control register CR0 at 60000010h, meaning that protection is off and paging is off, and it's the same value used by AMD for its own chips as well. No matter how powerful your 64-bit CPU is, it's basically just a chip from 1978 at boot until it's told to switch out of it.