2 Replies Latest reply on Oct 2, 2015 7:40 PM by Janagewen

    x64, An Architecture Name?

      Introduction to x64 Assembly | Intel® Developer Zone

       

      The fundamental architecture of x86 processor is invented and developed mainly by Intel, with extensions from Intel and other manufactures, such as 3DNow! from AMD. Intel name this fundamental architecture as IA-32. The 64-bit architecture of AMD64 processors is designed based on this IA-32 architecture, with their own extensions. So it is hardly to say that AMD64 is an exclusively AMD-owned architecture. For this 64-bit processor base system, Microsoft call it an 64-bit Extended System, not only differentiate with Itanium system, but also state its nature, not a completely new 64-bit architecture, later denoted as x64. So x64 is not exactly a name of an architecture or an instruction set, but a system extended with this kind of 64-bit processor. Operating System is written for a whole system, software and hardware, but assembler might be only written for an instruction set and its architecture.

        • 1. Re: x64, An Architecture Name?
          Cesar Badilla

          Hello Janagewen

           

          Please refer to the Intel® Developer Zone Forum  in order to get an answer from the software viewpoint.

           

          Additionally, take into consideration the fact x86-64 (also known as x64, x86_64 and AMD64) is the 64-bit version of the x86 instruction set *.


          • *x64 is the architecture name for the extensions to the x86 instruction set that enable 64-bit code.  Other names for it are x86_64, AMD's* original name and commonly used in open source tools. And amd64, AMD's* next name and commonly used in Microsoft* tools.
          • x32 is a  term that is not associated with hardware. It tends to be used to mean "32-bit" or "32-bit pointer architecture", Linux has an ABI by that name.

           

          Regards,

          Caesar B.

          • 2. Re: x64, An Architecture Name?

            Hello Cesar Badilla

             

            Thank you for you reply. Strictly, x64 is not a name of an architecture, and I could not make sure that the 64-bit instruction set of x86-64 is the 64-bit version of x86 instruction set, at least I could not find a clue from Intel official documents. x32, is not a name of an architecture too, Linux distro such as Knoppix just shares 32-bit user-land on both 32-bit and 64-bit kernel, and the x32 libs are used to make a bridge.

             

            For x64, the situations, used in Microsoft products,

             

            Windows XP 64-Bit Edition For 64-Bit Extended Systems (later changed to Windows XP Professional x64)

             

            "64-bit Operating System, x64-based processor"

             

            So x64 is not likely a name of an architecture or instruction set, but short for 64-Bit Extended Systems. As to x64-based processor, it could be interpreted as processor for this 64-bit extended systems.