вы совсем забыли незабвенное решение одного человека. Байт для преобразование выдавать в PORTA например, этот порт перекрестно коммутирован как требуется и соединен с PORTB и в итоге две команды - out и in :-))
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)