A 64-bit architecture contains 64-bit general purpose registers that can hold 64-bit data and instructions can operate on 64-bit operands. In 64-bit processors, the data stream doubles in size to 64 bits which doubles the capacity of the general purpose registers, while the instruction stream size remains the same. The only hardware difference in moving to 64-bits is the integer and address hardware, which increases the dynamic range of integers and addresses that can be represented.