What are the advantages of a 64-bit processor?

后端 未结 8 973
耶瑟儿~
耶瑟儿~ 2020-12-09 07:58

Obviously, a 64-bit processor has a 64-bit address space, so you have more than 4 GB of RAM at your disposal. Does compiling the same program as 64-bit and running on a 64-

相关标签:
8条回答
  • 2020-12-09 08:16

    The main advantage of a 64-bit CPU is the ability to have 64-bit pointer types that allow virtual address ranges greater than 4GB in size. On a 32-bit CPU, the pointer size is (typically) 32 bits wide, allowing a pointer to refer to one of 2^32 (4,294,967,296) discrete addresses. This allows a program to make a data structure in memory up to 4GB in size and resolve any data item in it by simply de-referencing a pointer. Reality is slightly more complex than this, but for the purposes of this discussion it's a good enough view.

    A 64-bit CPU has 64-bit pointer types that can refer to any address with a space with 2^64 (18,446,744,073,709,551,616) discrete addresses, or 16 Exabytes. A process on a CPU like this can (theoretically) construct and logically address any part of a data structure up to 16 Exabytes in size by simply de-referencing a pointer (looking up data at an address held in the pointer).

    This allows a process on a 64-bit CPU to work with a larger set of data (constrained by physical memory) than a process on a 32 bit CPU could. From the point of view of most users of 64-bit systems, the principal advantage is the ability for applications to work with larger data sets in memory.

    Aside from that, you may get a native 64-bit integer type. A 64 bit integer makes arithmetic or logical operations using 64 bit types such as C's long long faster than one implemented as two 32-bit operations. Floating point arithmetic is unlikely to be significantly affected, as FPU's on most modern 32-bit CPU's natively support 64-bit double floating point types.

    Any other performance advantages or enhanced feature sets are a function of specific chip implementations, rather than something inherent to a system having a 64 bit ALU.

    0 讨论(0)
  • 2020-12-09 08:18

    There's a great article on Wikipedia about the differences and benefits of 64bit Intel/AMD cpus over their 32 bit versions. It should have all the information you need.

    Some on the key differences are:

    • 16 general purpose registers instead of 8
    • Additional SSE registers
    • A no execute (NX) bit to prevent buffer overrun attacks
    0 讨论(0)
  • 2020-12-09 08:19

    Slight correction. On 32-bit Windows, the limit is about 3GB of RAM. I believe the remaining 1GB of address space is reserved for hardware. You can still install 4GB, but only 3 will be accessable.

    Personally I think anyone who hasn't happily lived with 16K on an 8-bit OS in a former life should be careful about casting aspersions against some of today's software starting to become porcine. The truth is that as our resources become more plentiful, so do our expectations. The day is not long off when 3GB will start to seem ridiculously small. Until that day, stick with your 32-bit OS and be happy.

    0 讨论(0)
  • 2020-12-09 08:24

    About 1-3% of speed increase due to instruction level parallelism for 32-bit calculations.

    0 讨论(0)
  • 2020-12-09 08:26

    With a 64bit Operating System, you can address over 4GB of RAM. This is useful for some applications.

    For example, you can load a large data cube in memory and cut and slice it more effectively (seismic data or medical data for example).

    0 讨论(0)
  • 2020-12-09 08:31

    This article may be helpful:

    http://www.softwaretipsandtricks.com/windowsxp/articles/581/1/The-difference-between-64-and-32-bit-processors

    This one is a bit off-topic, but might help if you plan to use Ubuntu:

    http://ubuntuforums.org/showthread.php?t=368607

    And this pdf below contains a detailed technical specification:

    http://www.plmworld.org/access/tech_showcase/pdf/Advantage%20of%2064bit%20WS%20for%20NX.pdf

    0 讨论(0)
提交回复
热议问题