Taken from the crucial.com website :
What is ECC memory? ECC (error checking and correcting) modules have an extra chip that detects if the data was correctly read or written by the memory module. If the data wasn't properly written, the extra chip will correct it in many cases (depending on the type of error). Non-ECC (also called non-parity) modules do not have this error-detecting feature.
Who needs ECC memory? The general rule of thumb in deciding what type of memory you need is to look at what's already installed in your system. If your machine does not support ECC, an ECC module will not operate in ECC mode, and it can affect system performance or may not work at all.
If you're building a PC and deciding which type to use, the following guidelines should help. If you plan to use your system as a server or a similar mission critical type machine, it is to your advantage to use ECC. If you plan to use your PC for regular home, office, or gaming applications, you are better off with non-ECC. Current technology DRAM is very stable and memory errors are rare, so unless you have a need for ECC, you are better served with non-ECC SDRAM or DDR SDRAM.
What is registered memory? Registers delay memory information for one clock cycle to ensure all communication from the chipset is collected by the clock edge, providing a controlled delay on heavily loaded memories. Registered memory cannot be mixed with unbuffered memory and is mainly used in servers and high-end workstations.
How to determine if you have parity or ECC memory You can determine whether your system has parity or ECC by simply counting the number of memory chips on each module. Parity and ECC memory modules have a chip count divisible by 3. Any chip count not divisible by 3 indicates a non-parity memory module