Discrete Fourier transformation or FFT?
The frequency range and resolution of a DFT/FFT is dependent on the following parameters:


Sampling rate


According to the well-known Nyquist therorem, the maximum frequency covered by the FFT is f_s / 2. In your case, the minimum sampling frequency is required to be greater than 32 kHz.


Measurement duration 


Frequency resolution (in other words: the DFT bin width) is dependent on the measurement duration: f_res = 1 / t_measurement. For your application, you need to observe a timespan of at least t_meas_min = 1 / f_min = 15.9 ms. In this case, exactly one period of your minimum frequency (63 Hz) is observed.   

As a result of these constraints, you need to analyse at least ~508 samples (at 32 kHz). For improving your results, consider higher values for both parameters.

To reduce processing load, the  goertzel algorithm might be a good choice as only the required frequency bins are evaluated.

In general, no value shifting is required as a constant offset is mapped to the lowest frequency bin (as long as you are not intending to use a window function to reduce spectral leakage). However, for microcontroller implementations, a value shift might be required, depending on variable types.