The difference between 32-bit and 64-bit has come up again recently, this time around Mac OS X 10.5 "Leopard", which is going to be more 64-bit than Mac OS X 10.4 "Tiger", but not quite as 64-bit as originally claimed. The difference between 32-bit and 64-bit for processors and operating systems is not simple, but it's also not too complicated. So here's my attempt at an explanation.

A 32-bit processor has full support for working with 32-bit values. In the simplest terms, this might be a 32-bit unsigned integer -- a number between 0 and 4,294,967,296 (2^32 - 1). They can add, subtract, multiply, divide, and perform various other computations which form the building blocks of modern "computation", including things that don't seem to have any connection to mathematics, such as word processing and working with images (or audio, or video).

The predecessors of 16-bit processors worked with 16-bit quantities. Their successors (which include the majority of processors currently sold) are 64-bit capable. They are backwards compatible, meaning they can also perform the same 32-bit operations as their predecessors.

The first advantage of 64-bit processors is that certain operations are faster, because they can be handled directly instead of as multiple smaller operations. Obviously both 32-bit and 64-bit processors are adequate for adding 1 + 1, and there's no 64-bit advantage there, but what about adding 100,000,000,000 + 400,000,000,000? These are both larger than 4,294,967,296, so this addition would typically require more than one operation (clock cycles) for a 32-bit processor, but a 64-bit processor could do it in one operation.

This would be a substantial win for speed, but the mainstream 32-bit processors (Intel's Pentium & early Core models, the PowerPC G4 & G5, and AMD's Athlon & Opteron) all offer a range of 128-bit Single Instruction Multiple Data operations. These "SIMD" instructions cater to the most common "multimedia" operations, such as Photoshop filters, audio encoding/decoding, and video encoding/decoding. For things which are be handled by the SIMD units (MMX/SSE on Intel, AltiVec/Velocity Engine on PowerPC) 64-bit operations aren't any faster. For things which are not well suited to SIMD but are larger than 32 bits, there is still a benefit from 64-bit processing.

http://en.wikipedia.org/wiki/SIMD

The other major advantage to 64-bit processors is memory addressing. A 32-bit processor can directly address 4 gigabytes of memory. 4gb is pretty good, but some of the Mac/Windows/Linux 32-bit memory "address space" is reserved for special purposes, such as I/O devices (disks, network cards, etc.). This is why Apple claimed early Intel Core MacBooks and MacBook Pros only supported up to 3gb of RAM. They could hold more, but some of it wasn't usable, and Apple didn't want to deal with the complaints from people who bought 4gb RAM and were only able to use 3.5gb. Current MacBooks, MacBook Pros, and Mac Pros are all 64-bit clean, and can fully take advantage of 4gb+ of RAM. There are workarounds for large memory addressing on 32-bit processors, but Mac OS X doesn't support them.

Large memory addressing is particularly important for high-end servers and heavy-duty media workstations, where 4gb+ is quite useful.

One reason there is misinformation about the benefits of 64-bitness is simply that it's complicated -- there are mitigating factors all around. Some benefits are available with a 64-bit processor and OS, but others are unlocked only with supporting chipset (the reason some Core 2 MacBooks and MacBook Pros still didn't fully support 4gb), and others require application upgrades as well (this is why Carbon APIs not being upgraded to 64-bit is a problem for some people).

http://www.carbondev.com/site/?page=64-bit+Carbon