I just tested this in FL Studio (Sine -> 300db Boost -> 300db Cut -> Waveform Display), and there was no loss of precision, visible or otherwise. So at least for FL Studio, my expectations were wrong. So that probably means samples aren't directly mapped to a floating point value, but maybe some form of "linearizing" curve/function is used? I don't know.
What I do know, is that my previous post is useless...