Як працює Bignum?

В інформатиці арифметика довільної точності, яка також називається арифметикою великого числа, арифметикою множинної точності або іноді арифметикою нескінченної точності, вказує на те, що обчислення виконуються на числах, чия точність цифр потенційно обмежена лише доступною пам'яттю головної системи.

Цілочисельний тип Bignum Python. Ідея полягає в тому вам потрібно лише використовувати обсяг пам’яті, який відповідає асортименту. Наприклад, 1-байтове ціле число може зберігати лише від -127 до +128, і якщо ви спробуєте зберегти щось за межами цього діапазону, ви генеруєте помилку або значення скорочується, щоб відповідати діапазону.

Ймовірно, найочевидніший спосіб зробити це – це зберігати ціле число як послідовність цифр, як ми зазвичай записуємо числа. Наприклад, ціле число 51090942171709440000 можна представити як [5, 1, 0, 9, 0, 9, 4, 2, 1, 7, 1, 7, 0, 9, 4, 4, 0, 0, 0, 0 ] .

Числа Python є основним типом даних для представлення та обробки числових значень. У Python є три основні форми чисел цілі числа, числа з плаваючою комою та комплексні числа.

Точність цілочисельного типу кількість бітів, які він використовує для представлення значень, за винятком будь-яких знаків і бітів заповнення. Біти заповнення впливають на розмір цілого числа, але не на його точність.

Python підтримує цілочисельний тип "bignum", який може працювати з як завгодно великими числами. У Python 2.5+ цей тип називається long і є відокремленим від типу int, але інтерпретатор автоматично використовуватиме будь-який з них більш відповідний. У Python 3.0+ тип int повністю вилучено.