The difference between Windows x86, x86_64, x64

  
                                                                                                                                                                                         

x86 refers to a 32-bit instruction set developed by Intel. Since the beginning of 386, it has been used until now. It is a cisc instruction set. All intel early cpu, amd early cpu support such instructions. Set, ntel official document called "IA-32";

x84_64 is the x86 CPU began to move to 64-bit, there are 2 options: 1, backward compatible with x86. 2, completely redesigned instruction set , not compatible with x86. AMD ran away, and was the first to produce a commercial compatible x86 CPU than Intel. AMD called it AMD64 and grabbed the first bucket of 64-bit PCs, which was recognized by users. Intel chose to design a new 64-independent instruction set that is not compatible with x86, called IA-64 (this seems to be Itanium), but it is a step later than amd, and IA-64 is also very bleak because it is Newly designed CPU, no compiler, no support windows
(Microsoft gave intel to flicker, promised to out of the Itanium version windows
server version, but delayed to get out thing). . . Later, I had to support the AMD64 instruction set in the case of backward timing, but changed the name, called x86_64, to indicate that it is a 64 extension of the x86 instruction set. I probably didn't want to admit that it was designed by AMD.

In other words, x86_64, x64, AMD64 are basically the same thing, we use the intel/amd desktop CPU is basically x86_64, the opposite arm, ppc, etc. Not x86_64.

The main difference between x86 and x86_64 is the 32-bit and 64-bit problems. There are only 8 32-bit general-purpose registers in x86, eax, ebx, ecx, edx, ebp, esp, esi, edi. X86_64 extends these 8 general-purpose registers to 64-bit and adds several registers to x86 (it seems to have increased by 8 to become a total of 16 general-purpose registers). The number and number of registers of the same MMX are also extended. In addition, the CPU can support more memory after expanding to 64-bit, and so on.

For ordinary programs, the expansion of CPU bits and the increase in the number of registers will not bring about significant performance improvements, such as IEbrowser
, Office Office software. Specific programs can take full advantage of the advantages of 64-bit CPUs and more registers. For example, MMX can improve the performance of multimedia programs, and can improve matrix, polynomial, and vector calculations. More MMX registers and more Large register word lengths are beneficial to the execution of SIMD instructions, which can improve the throughput of the CPU. (The CPU of the RISC instruction set has hundreds of registers, which can effectively buffer the intermediate calculation results without writing intermediate results. Memory, which reduces the number of memory accesses, significantly improves performance)

x86 is a standard number abbreviation for the Intel General


series, which also identifies a generic set of computer
instructions Collection, X has nothing to do with the processor, it is a simple wildcard definition for all *86 systems, such as: i386, 586, pentium. X64 is Microsoft's proprietary name for AMD64 and Intel EMT64 device program structures. It can also be said that X64 refers to a 64-bit CPU. X64 is a development of X86 that extends registers to 64 bits. In computer architecture, 64-bit integers, memory addresses, or other data units mean that they are up to 64 bits (8 bytes) wide. In addition, the 64-bit CPU and arithmetic logic unit architecture is based on the size of the registers, memory bus, or data bus. 64-bit CPUs existed in supercomputers in the 1960s, and as early as the 1990s, there were RISC-based workstations and servers. In 2003, it was introduced to the mainstream of the personal computer field (previously 32-bit) in the form of x86-64 and 64-bit PowerPC processor architectures. The number of bits in a 32-bit computer refers to the maximum number of bits that the CPU can process at one time. A 32-bit computer's CPU can process up to 32 bits of data at a time. For example, its EAX register is 32-bit. Of course, 32-bit computers can also handle 16-bit and 8-bit data. When Intel upgraded from 16-bit 286 to 386, in order to be compatible with 16-bit systems, it first introduced 386SX, which has an internal budget of 32 bits and external data transfer of 16 bits. Until 386DX, all CPUs were 32-bit internally and externally. Some people often can't figure out what is the relationship between “bit” and Byte, KB, MB, etc., and their relationship is that 8 bits is equal to one byte, ie 8bit=1B. A 32-bit processor processes 4 Bytes (32 bits) at a time. Similarly, a 64-bit processor processes 8 Bytes (64 bits) at a time. 64-bit computing requires processor and operating system support, and applications on personal computers are just beginning. Windows Vista 64bit is a relatively complete 64-bit operating system, 64bit is compatible with most 32bit operations, so Most of the 32-bit programs can run under the 64-bit operating system. With the development of computer hardware, 64bit operating systems and 64bit computing will become mainstream. Due to the emergence of more large programs, 32bit systems are beginning to fail to meet the requirements of the times.

Intel used 8086, 80286, 80386, etc. as the model representation of its PC CPU

x86 refers to the ordinary CPU made by Intel (when the x86 representation is proposed, on the personal computer to 32 Intel's CPU is the main)

x64 is the abbreviation of x86_64, which refers to the improved version based on x86 (adding performance such as 64-bit address extension)

IA64 stands for pure 64-bit computer architecture

amd64 stands for 32-bit compatible 64-bit architecture (AMD is the main manufacturer of this architecture).

However, since Intel started earlier, it has a greater impact, and sometimes the CPU of the amd64 architecture is called the x86_64 architecture.

In addition, the new generation of 586 processors surpassing 486 has come out. In order to get rid of the confusion of processor names in the 486 era, Intel, the largest CPU manufacturer, named its new generation product Pentium. Show the difference. AMD and Cyrix also introduced K5 and 6x86 processors respectively. Therefore, to understand the meaning of x86, that x can be 3, 4, 5 and so on.

Summary:

x86 refers to the architecture of 32-bit computers, also refers to 32-bit operating systems, such as i386, i686, i486, etc.; x86_64 and x64 refer to 64-bit architecture , also refers to the 64-bit operating system

32-bit (X86) version of the operating system (OS) can work under a 64-bit processor (CPU), while the 64-bit (X64) version of the operating system (OS ) It can't run normally under 32-bit processor (CPU). If your operating system (OS) is X86, it doesn't mean that the CPU is 32-bit.

32-bit CPU can only be installed with 32-bit operating system, 64-bit CPU can be installed with 64-bit operating system, or 32-bit operating system, because your CPU is 64-bit, so it can be compatible with 32. Bit, 64-bit two systems.

Just say: install 64-bit operating system before they can play the best performance of 64-bit processors only


!

Copyright © Windows knowledge All Rights Reserved