Sounds like a bad sector on your HDD or a bad memory address to me:
http://www.osronline.com/ddkx/ddtools/bccodes_2vjb.htm
HDD:
Do a "chkdsk c: /f" from the command line. It will say the drive is in use and whether to do it on next reboot. Say yes. Then reboot and watch the results. If there are bad sectors, then a new drive may be needed. The system will mark these blocks as bad to prevent re-use, but it could also be a sign of impending failure.
If you have imporant data on the drive you can not afford to lose, remove it from the PC, attach it as a slave drive on another PC and grab the files you need. Once the drive is bad where it cannot be read, it will take expensive services to retrieve the data.
Memory:
Get a copy of Memtest86. This program stresses each memory address and tells you if/where the memory errors are. The program will create a bootable floppy. Boot from the floppy and start the test. If you have two sticks of memory, maybe one is going bad and only causes problems when the system attempts to read/write to it.