regarde ici (Shift and Add-3 Algorithm)

http://www.engr.udayton.edu/faculty/jloomis/ece314/notes/devices/binary_to_BCD/bin_to_BCD.html
c'est bien expliqué je crois.