Because there are two definitions for GB. The binary definition is 1,024 x 1,024 x 1,024 = 1,073,741,824 and that is the one used by Windows to report disk size.
Storage system manufacturer, however, took the liberty to define GB as 1 billion bytes. The difference between the two is 7.3%, so 128 GB (disk) = 119.2 GB (binary).
Then you must take into account the fact that Windows reports formatted capacity, while storage manufacturers reports unformatted size, resulting in the difference that you noticed.
The same applies to your hard drive, too.