Basically it's for memory error checking (or lack of it - non-parity).
Something to start you off...
In order to ensure that memory is working correctly, data integrity, there are two primary means - parity and error correction code (ECC) or no checking at all - non-parity.
This is the most common used method. It can detect errors, but not correct them.
ECC (Error Correction Code):
ECC can detect and correct single-bit errors. It is used in high-end PC's and servers.
Because there has been an increased quality of memory components and an infrequency of errors, more and more manufacturers do no include error checking capabilities. This also lowers the cost of the PC."
Source: click here