Long Mode Details
Let’s now take a closer look at the long mode. As we have seen before, the Long Mode allows the use of the 64-bit features, at the same time it offers the Compatible sub-mode to run 16- or 32-bit applications. This mode brings a great deal of features, which are following listed:
- Virtual 64-bit addressing;
- Registers extended to 64 bits;
- Addition of 8 registers (R8-R15);
- Addition of 8 registers for SIMD (XMM8-XMM15);
- 64-bit instruction pointer;
- Flat addressing mode.
The addition of new registers for SIMD operations make a total of 16 multimedia registers available. The new general purpose registers come to reduce a little one of the weaknesses of the x86 architecture, which is the small number of registers.
To better define its registers logic, AMD has simply extended the scheme used for the 16- and 32-bit registers. So, it is still possible to access in fractionated way the registers inherited from the old 8086. For example, the RAX register can be accessed as a single 64-bit block, but it is also possible to access only its inferior half through the EAX register. Besides that, a portion of 16 bits (AX) and two portions of 8 bits (AH and AL) are also accessible. Of course the AX is formed by the juxtaposition of the registers AH with AL. This way, all the compatibility with the old x86 environments is kept. Figure 3 shows these possible fractions.
The advances in integration technology and the increase of the clock speed should make a better performance of those CPUs possible, even when operating in the Legal Mode. With this architecture, AMD hopes to offer an easy way for the transition from 32 to 64 bits. In the past, a transition not so easy due to the new memory model, allowed an evolution from the 16 bits (8086 and 286) to the 32 bits (386 and forward). AMD bets that, instead of changing the architecture completely, the success will be with the one that keeps the compatibility.