Проблема оптимального представления целых чисел в компьютерных системах связана с несколькими аспектами, среди которых:
- Ограниченность диапазона представимых чисел. 14 В большинстве языков программирования под целыми числами понимаются числа из ограниченного диапазона. 1
- Сложность арифметических операций. 1 Например, сложность умножения и деления обусловлена тем, что с ростом длины числа количество элементарных операций увеличивается по квадратичному закону. 1
- Влияние знака числа на его представление. 1 Желательно, чтобы наличие или отсутствие знака «+» перед целым числом не влияло на восприятие его компьютером. 1
- Представление рациональных чисел. 2 Существуют рациональные числа, которые не могут быть представлены абсолютно точно ни в десятичной системе счисления, ни в двоичной. 2
- Необходимость усложнения архитектуры процессора. 35 Например, при использовании прямого кода для выполнения арифметических операций с отрицательными числами требуется отдельная схема, что усложняет архитектуру центрального процессора. 35
Для решения этих проблем используются разные способы представления целых чисел, например, код со сдвигом, дополнительный код (дополнение до единицы или до двух). 35