Automatically measure voltage over a wide range
The way instruments can measure various ranges of a certain quantity is through amplification. If you put aside automatic range adjustment for the moment, it gets conceptually much simpler.

Say that you have a knob, and each position of the knob activates a different amplifier: x1, x10, x100 etc. Typically, one of these values will be optimal to make the best use of the ADC, while the lower settings will give too small output (therefore higher measurement error) and higher amplification will cause the signal to saturate and put the instrument out of scale.

You can of course go the other way around and use different types of attenuation, to use signals of amplitude greater than the range of the ADC.

Note that you can achieve the same effect by chaining amplifiers (e.g. 10x) and reading the signal at various stages (again, using switches), instead of having different ones in parallel.

Now, regarding the automatic switching, it gets more complicated because you have to add some intelligence to assess which is the best amplification to get the best measurement. The simplest way (at least conceptually) is to read the ADC and compare the output value with thresholds: if it returns the highest value you can assume it's saturated, therefore you can activate a lower amplification; if it's lower than a certain threshold, you can assume that amplifying the signal will provide a better reading.

Of course you'll have to digitally multiply the ADC reading to compensate for amplification.

There is also a use for a serial capacitor (AC coupling), but it's not related to signal amplitude and I'd like you to disregard it for now, else it would complicate things.

There is an interesting article describing the exact same concept, but using resistors (voltage dividers) as attenuators, instead of amplifiers.