Abstract: Output of an encoder are sampled by A/D converters 11a and 11b to be converted to N bits A-phase and B-phase digital data DA and DB. In a look-up table memory 12, reference phase angle data of phase divisions and average gradient vectors of changes in phase angle data within the phase divisions are stored, the phase divisions being addressed by the high order NU bits of data DA and DB. An arithmetic circuit 13 determines a vector inner product of an average gradient vector and phase-interpolating data represented by the low order NL bits of the data DA and DB to add the resultant to a phase angle data, thereby outputting an interpolated phase angle data.