I would suggest running a memory check:
http://oca.microsoft.com/en/windiag.asp
Then a HD check:
Manual steps to run Chkdsk from My Computer or Windows Explorer
1. Double-click My Computer, and then right-click the hard disk that you want to check.
2. Click Properties, and then click Tools.
3. Under Error-checking, click Check Now. A dialog box that shows the Check disk options is displayed,
4. Use one of the following procedures:
• To run Chkdsk in read-only mode, click Start.
• To repair errors without scanning the volume for bad sectors, select the Automatically fix file system errors check box, and then click Start.
• To repair errors, locate bad sectors, and recover readable information, select the Scan for and attempt recovery of bad sectors check box, and then click Start.
Note If one or more of the files on the hard disk are open, you will receive the following message:
The disk check could not be performed because the disk check utility needs exclusive access to some Windows files on the disk. These files can be accessed by restarting Windows. Do you want to schedule the disk check to occur the next time you restart the computer?
Click Yes to schedule the disk check, and then restart your computer to start the disk check.
http://support.microsoft.com/kb/315265
Tick both these boxes before running the scan:
http://donaldbroatch.users.btopenworld.com/chkdsk.png
If the memory test is clean and you still have the same problem after the HD check, come back and tell us.
(If the memory test indicates faulty memory, you’ll need to replace the faulty memory.)