This is how the math works:
The manufacturer of most drives say 128 GB is equal to 128,000,000,000 bytes. But since there are really 1024 mb in a gb, it works out to this:
128,000,000,000 bytes / 1024 = 125,000,000 kilobytes
125,000,000 kilobytes / 1024 = 120,070 megabytes
120,070 megabytes / 1024 = 119.21 gigabytes
Kind of confusing and weird, but the industry decided to do that a while ago in order to claim larger capacities. In reality a 128 GB drive would need to contain 137,438,953,472 bytes (128*1024*1024*1024).