There are 4096 Values a 0-100% range has 101 values, we don't use 101 in calculations, so why use 4096 instead of 4095?
Because there isn't. If you look how a typical SAR ADC operates, measurement range does not include a separate code for Vcc.
The small error is hidden in noise, gain errors, inaccuracies and nonlinearities, but using wrong multiplier adds
even more error, so don't do that.
Assume imaginary highly accurate 4-bit SAR ADC in a microcontroller powered from 1.6V supply voltage. Code 0 corresponds to 0 to 0.1V, code 1 to 0.1 to 0.2V, and so on, until code 15 corresponds to 1.5V to 1.6V. Therefore, when you convert to percentages or voltages, you divide by 16:
Code 1: 1/16 * 1.6V = 0.1V
Code 15: 15/16 * 1.6V = 1.5V
In both cases that would be the start of the bin.
If you divide by 15, you will get the ends wrong by different amount:
Code 1: 1/15 * 1.6V = 0.10666V
Code 15: 15/15 * 1.6V = 1.6000V
Now if you redefine the meaning to be the "upper side of the bin", then code 15 appears "correct", but code 1 is then incorrect to that definition. You added gain error.
You get bonus points of using the correct divider in that it can be implemented as a simple bit shift way more efficiently than a division, which most simple microcontollers lack.