This is a very common situation on modern systems. And for good reason.
Since decades ago computers have had memory mapped hardware devices. This is special hardware that can be accessed by the CPU just as if it were memory. This is used for fast communication with hardware devices such as the video system. Without this computers would suffer a severe performance penalty.
For compatibility with 32 bit operating systems this memory mapped hardware must appear in the bottom 4 GB address range. In modern systems this means several hundred MB at the least which is quite significant. Since memory mapped hardware and RAM cannot exist at the same addresses a considerable portion of RAM would be inaccessible. This is why 32 bit versions of Windows cannot see all 4 GB RAM.
This is not a good situation. But there is a solution, at least for those operating systems that can handle it. The solution is to remap those portions of RAM that would otherwise be inaccessible to addresses above 4 GB. This is what you are seeing. For the benefit of 32 bit operating systems as much RAM as possible will be left at addresses below 4 GB.
This memory remapping is done by the computer hardware and BIOS so will available to any operating system. Modern 64 bit operating systems and memory test programs are designed for this. For technical reasons 32 bit client versions of Windows will ignore all memory above 4 GB. With modern operating systems applications never see physical RAM addresses so memory mapping is of no concern to them.