I am aware of some the obvious gains of the x64 architecture (higher addressable RAM addresses, etc)... but:
Most computers released over the past two decades were built on a 32-bit architecture, hence most operating systems were designed to run on a 32-bit processor. A 64-bit register can theoretically reference 18,446,744,073,709,551,616 bytes, or 17,179,869,184 GB (16 exabytes) of memory.
Can you run a 32-bit program on a 64-bit machine? To put it in simple words, if you run a 32-bit program on a 64-bit machine, it will work fine, and you won't encounter any problems. Backward compatibility is an important part when it comes to computer technology.
There are 3 most obvious advantages of 64-bit processors over their 32-bit counterparts: extended address space, capacity increase, and larger number of general-purpose registers.
A 32 bit architecture allows the arithmetic and logic unit (ALU), or digital circuit, to perform 32-bit integer arithmetic and logical operations. For architecture with 64-bits, it allows a 64-bit version of Windows to handle large amounts of RAM better than a 32-bit system.
x86-64 is a bit of a special case - for many architectures (eg. SPARC), compiling an application for 64 bit mode doesn't give it any benefit unless it can profitably use more than 4GB of memory. All it does is increase the size of the binary, which can actually make the code slower if it impacts on cache behaviour.
However, x86-64 gives you more than just a 64 bit address space and 64 bit integer registers - it also doubles the number of general purpose registers, which on a register-deficient architecture like x86 can result in a significant performance increase, with just a recompile.
It also lets the compiler assume that many extensions, like SSE and SSE2, are present, which can also significantly improve code optimisation.
Another benefit is that x86-64 adds PC-relative addressing, which can significantly simplify position-independent code.
However, if the app isn't performance sensitive, then none of this is really important either.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With