x64 Divided by Two is NOT x32!
At the verge of the transition from 32-bit to 64-bit Windows it is interesting to observe how people interpret and misuse acronyms for the definition of “their” platform. Looking at the acronyms in use out there one might consider oneself back in the eighties, with dozens of different incompatible computer systems. Unfortunately it is more boring than that. Let’s have a look.
From x86 to IA64
The prevalent 32-bit Intel architecture is called x86. Of course, 32-bits are not exactly flashy these days, 64-bits are state of the art. Intel anticipated that long ago, creating the IA64 architecture with some billions from HP. Why it was called IA64? Simple: the internal name for x86 had always been IA32. Simple enough.
The confusion begins with the less than successful market reception of IA64 (or Itanium). AMD had something more elegant up their sleeves, a simple 64-bit extension to the x86 architecture they called AMD64. After some initial success Intel grudgingly acknowledged AMD had not been entirely wrong by adding the same instruction set extensions to their own processors – under the name EM64T. Only when it became clear that IA64 aka Itanium would never become mainstream did Intel realize how important AMD’s addition to the x86 instruction set had been and how poorly their own name had been chosen. Better late than never, they rebranded EM64T to Intel 64.
x86: 32 or 64?
But it was late, maybe too late. Even modern versions of Windows still use the internal name AMD64 for the 64-bit x86 architecture. In an effort to be technically correct, many Linux variants use x86_32 for the 32-bit x86 architecture, and x86_64 for CPUs with the 64-bit extensions. But that seems to be too complex for everyday use. The simpler term x64 took hold.
Where are we at today? Most computers sold still run 32-bit operating systems. But their CPUs are capable of supporting both 32-bit OSs and 64-bit OSs. In other words, you probably are reading this on a x86_64 CPU that is working in 32-bit mode. If you are an early adopter, you might be using Windows x64 right now (like me).
This could have been the end of this article, had not an internet search caused me to write this in the first place. Yes, the future platform is called x64, and yes it is 64-bit, and yes, the current platform is 32-bit, but that does not mean that one may call it x32. There is no such thing as x32!