Lately I've seen all this sort of things like x86 or 64 bit.
What does x86 mean?
What is the difference betwen 32 and 64-bit CPU-s?
Why are 64-bit systems called "64-bit extended"?0
<font color=red>Please be seruous.<font color=red>
There is a majority of thins I know, but few others I still need to know.
x86 is the type of CPU architecture most current PC CPU's are based on. I dont know enough about it to comment much further, but I sure someone else on here does.
CPU's can only handle a certain size of data, this is know as the word size. Before the AMD's 64bit CPU's this was 32bits (and before that it was 16bits). This has two effects, firstly a 32bit CPU can only address 4Gb of memory. This is because each location in memory needs an address and there are only 2^32 different address and 32bit CPU can provide. Also it limits the calculations you can do, lets say you want to add 1 to a 64bit number, with a 32bit CPU this would take 2clock cycles because the number would have to be split in two. With a 64bit CPU it could be done in 1 clock cycle.
That is my understanding of it a least, please feel free to correct me if Im wrong.
>What is the difference betwen 32 and 64-bit CPU-s?
support for 64 bit long registers, therefore also:
support for 64 bit long pointers (>32 bit addressing)
What does this mean ? Well, a 64 bit cpu will be able to address more than 4 GB *virtual* memory per process. A 32 bit cpu is limited to 4 GB. Note, this does not have anything to do with being able to add more than 4GB *RAM*. Even a Pentium Pro could address 16 GB RAM, but using that requiers lots of individual processes, each using 2 GB.
Also note, in reality with a 32 bit cpu, you are limited to ~2GB per process, as the other half is reserved for the OS.
Another advantage of 64 bit cpu's is their ability to perform math on 64 bit integers. A 32 bit cpu can do this too, but is much slower, in theory 4x slower than a 64 bit wide cpu. However, 64 bit INTeger math is not common at all in software, its pretty much only used in encryption (SSL) or mathematical simulations, not general purpose software, and not games.
Specific advantages for AMD64 (or intel's "64 bit extended x86 clakamas technology, same thing) additional to what I noted above:
1) twice the number of registers (16 versus only 8 for traditional 32 bit x86)
2) twice the number of SSE2 registers
3) a new processor mode breaking old legay; with this I mean that any software designed to run in 64 bit mode will not have to be compatible with a 386 or 486, and will be compiled to take maximum advantage of modern cpu's since this code will not run on a 386 anyway.
4) NX bit. NX (No Execute) tags a chunk of memory as being data, not executable code. if the OS supports this (XP SP2 will), it can prevent common security holes like buffer underrun exploits, making your computer more secure against viruses/worms.
Combined, you can expect to see a performance increase anywhere from -5% to more than +100% running 64 bit code on a 64 bit OS. A small decrease is possible as 64 bit code is ~10% bigger than 32 bit code, thus reducing effective bandwith. Realistically, I think you'll see a ~15% speedup in general, with some specific apps gaining substantially more.
>Why are 64-bit systems called "64-bit extended"?0
Because intel has some issues calling it AMD64
= The views stated herein are my personal views, and not necessarily the views of my wife. =<P ID="edit"><FONT SIZE=-1><EM>Edited by P4Man on 03/10/04 06:08 AM.</EM></FONT></P>