An approximation control code is initially set to logic "1" except for the MSB which is set to logic "0". At the m-th comparison, if a sampled analog signal is greater than a comparison reference signal proportional to the control code, the m-th and (m+1)th MSBs of the control code are replaced by logics "1" and "0" respectively, and, if the sampled analog signal is less than the comparison reference signal, the (m+1)th MSB is replaced with logic "0".