Auto ranging would typically be handled by adding a PGA (programmable gain amplifier) in front of your A/D converter. In some instances to make maximum utility of the range of your A/D converter you would also add a programmable offset into the PGA as well. The output of the PGA would get clamped via some diodes to the A/D converter reference voltage range.
Another scheme is to design multiple amplifiers, each with its own gain and offset, that sample the input signal and condition it in a particular way. Each of these amplifiers could be setup with trimpots to permit calibrating to a precise operating range. The outputs of these amplifiers would be gated to the A/D converter through a many to one Analog Multiplexor.
It is still possible to "calibrate" the scheme with the PGA amplifier with programmable offset by feeding known signal levels through the circuit and then noting the programmable settings it takes to get an aimed for output from the A/D converter. These would get stored into some non-volatile memory of the MCU to be used for adjusting/scaling the A/D readings to the proper values when taking readings of actual signals.