Общий алгоритм - Определяем порядок нашего размера аллокации, из порядка получаем уровень в битмапе (которая на самом деле бинарное дерево), ходим по битам в пределах уровня пока не упремся в нолик, если уперлись - делаем ор мапы со значением в константном массиве из картинки выше.