Во-первых какова реализация изначально? На таблице очень быстро получается.
Во-вторых нужно ли 1/4 шага знать? Можно ведь на прерывание по отрицательному фронту завести ИЛИ двух сигналов энкодера и по уровню одного из них смотреть направление. Куда уж проще и быстрее.