Quote:
Originally Posted by error10

I keep hearing things like this, and it doesn't make a lot of sense. Got some evidence of this?
|
this isn't anything new really... we saw the same thing when intel was migrating from 16bit to 32bit during the 286 -> 386 transition. (my age is showing in this conversation huh?)
you need to have a little background in programming with strongly typed languages and maybe a basic understanding of assembly. if you're loading a 64bit integer type when you're only using the lower 32bits (or less), you're doing extra copying of "0"'s into the registers of the processors. the instruction sets are also larger and pointers are larger too.. that's why the executable binaries are larger for 64bit vs 32bit code. It's as simple as the fact that you need to do more work copying larger data types, larger pointers, larger instructions to run 64bit vs 32bit code. even reading a 1MB file that is a 64bit binary executable off disk is going to take longer than reading the 32bit version which might be 512KB. i think you get it...
in the bigger picture of things, it doesn't really matter because processor technologies get faster and faster and people soon forget the "slow down" ... and sooner or later, programmers start writing code that can advantage of the larger pointers (if they need to address more memory for the program, remember the 4GB limit in 32bit Intel ?), start handling data that actually need the 64bit data types, etc. Once you reach that stage, you're going to be faster than the older "smaller" architecture because handling a 64bit integer on a 32bit platform requires "double" the work (put in oversimplified terms).