Я знаю, что вы можете разделить число на две степени пополам следующим образом:
halfintR = some32bitint & 0xFFFF
halfintL = some32bitint >> 16
можете ли вы сделать то же самое для целого числа, которое ограничено не степенью двойки?
(скажем, что вы хотите, чтобы ваш диапазон был ограничен набором целых чисел, которые будут помещаться в 4-значное беззнаковое пространство 52)