Python 2, 58 55 bytes
f=lambda n:"!"[:n]and f(n/16)+"HBKD"[n/4%4]+"OAEI"[n%4]
Saved 3 bytes thanks to Sp3000!
A recursive solution. Try it on Ideone.
f=lambda n:"!"[:n]and f(n/16)+"HBKD"[n/4%4]+"OAEI"[n%4]
Saved 3 bytes thanks to Sp3000!
A recursive solution. Try it on Ideone.