Как личный проект, я работаю над реализацией типа числа Arbitrary Precision для моего любимого проекта.
Я уже знаю обо всех популярных, проверенных и надежных библиотеках, которые делают это,Я хочу поработать над решением в качестве образовательного проекта по самосовершенствованию.
Я исследую область и пытаюсь выяснить, есть ли способ примерно предсказать, если операциявызовет переполнение, прежде чем я действительно сделаю вычисления.Я не так обеспокоен ложными срабатываниями.
Я хочу иметь возможность использовать наименьшее пространство, подходящее для расчета.Если вычисление останется в пределах его собственных границ, я оставлю его там.
Например: Multiplying two 64 bit Integers if each are large enough will cause an overflow.
Я хочу обнаружить это и преобразовать числа в мой тип чисел, только если результат может превышает разрешение 64 бита.В этом эксперименте я буду работать с знаковыми числами.
Какой самый разумный и эффективный способ обнаружения переполнения / недостаточного заполнения?