Відкрити головне меню

Зміни

м
технічні зміни, replaced: | → | (9) за допомогою AWB
{{без джерел}}
'''Довга арифметика''', в обчислювальній техніці, операції над числами, розрядність яких перевищує довжину [[машинне слово | машинного слова]] даної обчислювальної машини{{fact}}. Окремий випадок — '''арифметика довільної точності''' — відноситься до арифметики, в якій довжина чисел обмежена лише обсягом доступної пам'яті.
 
== Основні споживачі ==
* [[Криптографія]].
* Математичне та фінансове ПЗ, яке вимагає, щоб результат обчислення на комп'ютері збігся до останнього розряду з результатом обчислення на папері. Зокрема, [[калькулятор Windows]] (починаючи з [[Windows 95]]).
* «Спортивні» обчислення знаменитих [[трансцендентне число | трансцендентних чисел]] ([[пі (число)|π]], [[e (число)|e]] і тощо.) з високою точністю.
* Високоякісні зображення [[фрактал]]ів.
* Дисципліна в [[олімпіада з інформатики | спортивному програмуванні]].
 
== Апаратні засоби для роботи з довгою арифметикою ==
== Порядок слів ==
 
Незалежно від [[порядок байтів | порядку байтів]] машини, в довгій арифметиці існує порядок слів (з початку або з кінця). Найчастіше використовують зворотний порядок (з кінця) — операції над довгими числами виконуються саме з кінця.
 
== Реалізація в мовах програмування ==
 
У більшості мов високого рівня існує арифметика довжиною у два слова. Більш довгу арифметику зазвичай доводиться писати своїми силами, в міру можливості [[оптимізація (програмування) | оптимізуючи]] на [[мова асемблера | асемблері]] — в мовах високого рівня таких абстракцій, як «реєстрова пара» і «біт перенесення», зазвичай немає.
 
У [[Turbo Pascal]] існував шестибайтовий емулюючий [[плаваюча кома | дробовий тип]] — ''Real'' (у [[Delphi (мова програмування) | Delphi]] перейменований в ''Real48''). Обчислення з ним також проводилися за допомогою довгої арифметики.
 
[[Категорія:Довга арифметика | *]]
{{Compu-stub}}
 
[[Категорія:Довга арифметика | *]]
[[Категорія:Алгоритми]]
[[Категорія:Комп'ютерна арифметика]]
[[Категорія:Типи даних]]
 
 
{{Compu-stub}}
 
[[cs:Výpočty s libovolnou přesností]]
201 243

редагування