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

Довга арифметика

Версія від 14:24, 5 лютого 2011, створена Krystofer (обговорення | внесок) (Створена сторінка: '''Довга арифметика''', в обчислювальній техніці, операції над числами, розрядність яких пе...)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)

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

Основні споживачі

Апаратні засоби для роботи з довгою арифметикою

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

Порядок слів

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

Реалізація в мовах програмування

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

У Turbo Pascal існував шестибайтовий емулюючий дробовий тип — Real Delphi перейменований в Real48). Обчислення з ним також проводилися за допомогою довгої арифметики.