the registers of a x68 architexture based computer are EAX,EBX,ECX,EDX,ESP,EBP,ESI,EDI and EIP .
each of them consists of 32 bits that means 4 bytes that means they can hold values up to FFFFFFFF =4.294.967.295 !
but int64 values require 8 bits . so how can computers with 32-bit registers declare and manipulate 64-bit values ???

Solution 2

Some instructions will works on a pair of registers while other might be implemented in software. Thus if your application does a lot of 64 bits arithmetic, it might be faster when running as a 64 bit application.

By the way, it would be very easy to know by looking at the disassembly code. Simply compile an unmanged application both in 32 bit and 64 bit with some arithmetic on 64 bits numbers and you will have a good idea of what the compiler does.