HP is working on a bios revision. the bios revision in the pc (which is the current revision) has issues with memory addressing. that said there is a workaround to getting usable memory to be consistent with installed memory. it involves the msconfig file (I did not run any memtests. all of the memory modules are fine).
a simple, and painless, way to force windows to recognize correct usable memory is open msconfig by entering msconfig in a run command. go to the boot tab click advanced. uncheck maximum memory, reboot, open msconfig and check maximum memory, reboot.
this may not work for everyone but worked for me