AMD’s Voyage into the 64-bit Arena: x86-64 Revealed
by Anand Lal Shimpi on August 10, 2000 3:34 AM EST- Posted in
- CPUs
How x86-64 Works
AMD just today released the specifics on their x86-64 architecture allowing programmers to begin development for the platform. The 64-bit extension to the x86 ISA adds a number of advancements over the current 32-bit x86 ISA, the most notable improvements are 8 new general purpose registers (64-bit), 64-bit memory addressing, and of course 64-bit wide registers and instruction pointer.
In addition to the 8 new general purpose registers (GPRs), the x86-64 ISA extends the existing registers to 64-bits much like the i386 extended the, at the time, 16-bit registers to 32-bits. This is done through the use of a REX prefix, for example the RAX register is the 64-bit version of the EAX register. Meaning an ADD function with a prefix would be the 64-bit equivalent to its 32-bit counterpart. This is similar to the 32-bit transition the x86 ISA encountered seemingly ages ago.
The x86-64 architecture features two operating modes, a legacy mode that works with all existing 16/32-bit operating systems and applications and a new operating mode known as 'long mode' which is split into two more modes, both of which require a 64-bit operating system. In 64-bit mode, as the name implies, you receive all the benefits of a 100% 64-bit architecture, meaning you can run 64-bit applications under your 64-bit OS.
At the same time the architecture allows for a compatibility mode where you can run 32-bit applications under a 64-bit OS. The below table helps to illustrate the point:
While this is a very simplified method of describing how x86-64 works, AMD has released the documentation on the architecture so depending on how much more detail you're interested in going into, the information is available.
1 Comments
View All Comments
Dr AB - Friday, May 8, 2020 - link
So that means indirectly, it was AMD's adoption decision/strategy that we see 32-bit only applications to this day. Hmm ... I wonder what if things had gone the other way.