Я хотел бы, чтобы схема представляла целые числа, начиная с 0, без каких-либо ограничений (предполагая доступ к бесконечному линейному хранилищу).
Вот схема, которая может представлять числа от 0 до 255:
Используйте первый байт памяти (адрес 0) для хранения целого числа.
Теперь предположим, что я хочу представить числа, превышающие 255. Конечно, я мог бы использовать более 1 байта для представления целого числа, но, пока это фиксированное число, в конечном итоге будет целое число, настолько большое, что оно не может быть представлено оригинальная схема.
Вот еще одна схема, которая должна быть в состоянии выполнить задачу, но, вероятно, она далеко не эффективна.
Просто используйте какой-то уникальный байт «конца числа» и используйте все предыдущие байты для представления числа. Очевидно, что этот байт «конца числа» не может использоваться нигде в числовом представлении, но этого можно достичь, используя систему нумерации base-255 (вместо base-256).
Однако это медленно и, вероятно, неэффективно. Я хочу иметь лучший, который работает лучше с низкими значениями и хорошо масштабируется.
По сути, это система UUID. Я хочу посмотреть, возможно ли создать быстродействующую систему UUID, которая теоретически может масштабироваться для использования в течение многих лет, тысяч лет, миллионов лет без необходимости ее перепроектирования.