Могу ли я работать с большими числами (более 10^400) встроенным методом в Delphi?
Большие числа в Паскале (Delphi)
Ответы (3)
Не встроен, но вы можете проверить MPArith для вычислений с произвольной точностью. .
Существует также библиотека Delphi BigInt на SourceForge. Однако я не пробовал, но включил для полноты картины.
Вы можете реализовать свои собственные процедуры работы с большими числами, используя перегрузку операторов Delphi.
Например, сложение, вычитание, умножение и деление.
Intel также добавила новые инструкции для умножения и, возможно, для деления в своем последнем дизайне чипа, который выйдет в ближайшем будущем.
Одна из этих инструкций называется: mulx
Intel упоминает несколько потоков переноса, которые также позволяют ускорить умножение.
В x86 уже было вычитание с заимствованием и сложение с переносом, так что теперь эти новые инструкции делают более или менее то же самое для длинного умножения и деления и т. д. ... есть два метода выполнения умножения, и, очевидно, используя оба, это становится возможным.
В будущем Delphi, вероятно, будет поддерживать и эти новые инструкции, что может сделать программирование чем-то вроде этого более интересным.
На данный момент эти 4 основные операции могут привести вас куда-то... или, возможно, никуда.
Это немного зависит от того, что вы хотите сделать... какая математика? просто базовая математика, такая как add/sub/mul/div
Или более сложные математические операции, такие как косинус, синус, тангенс и другие математические функции.
Насколько я знаю, перегрузка операторов доступна для записей... Я смутно припоминаю, что она могла быть добавлена и к классам, но пока не принимайте это к сведению.
Раньше при перегрузке операторов возникала ошибка при преобразовании между типами... но она была решена в более поздних версиях Delphi, так что все должно быть хорошо.