Я получаю, что вы хотите сделать что-то вроде: взять первые четыре бита, поместить их в стек (чтение слева направо), а затем просто поместить их в регистр и сдвинуть их x раз, чтобы поместить их в правая часть номера?
Что-то вроде
1000 0000 | 0000 0000 | 0000 0000 | 0000 1011
Стек: внизу - 1101 - вверху
сдвиньте его 28 раз влево
Затем сделайте что-то похожее с последними четырьмя битами, но сдвиньте вправо и сохраните в регистр.
Тогда вы и тот с пустым возвращаемым значением 0
Есть ли более простой способ?