(Someone)
Могу предположить следующий сценарий:
1) согласно высказанному желанию, джинн обнуляет 8-битный счётчик желаний;
2) поскольку одно желание выполнено, джинн делает инкремент счётчика.
Тогда исходно желаний вроде бы 256, а Джинн говорит, что 3. То есть используются только первые два бита, вроде бы.
У меня в свою очередь есть несколько более логичная, КМК, версия анекдота: клиент выполняет два желания, а третье отводит для обнуления счетчика. Дальше повторяет.
-- добавлено через 5 минут --(mihaild)
mihaild
И после обнуления Unsigned Int его декремент приводит к появлению 255? Это потому, что декремент реализован как какая-то хитрая битовая операция, или типа того?