Какие распространенные математические ошибки следует знать при использовании .NET на платформах x32 и x64? - PullRequest
0 голосов
/ 03 ноября 2010

Что следует иметь в виду при выполнении расчетов с использованием .NET?

Например, я немного знаю об ошибках с плавающей точкой, но я не знаком с этим сообщением на форуме по CodeProject. Что мне нужно знать, чтобы завершить мои знания по математике на основе .NET, чтобы я мог посоветовать, как работать с параметрами и результатами различных битовых размеров.

Ответы [ 2 ]

1 голос
/ 03 ноября 2010

Необходимо помнить, что разные числовые типы имеют разные диапазоны: взгляните на статические свойства MinValue и MaxValue.Если вы превысите эти диапазоны (путем сложения, умножения или чего-то еще), то ответы не будут такими, как вы думаете.(Числа переходят от максимума к минимуму.)

1 голос
/ 03 ноября 2010

Всегда помните, что с плавающей запятой хранятся двоичные дроби, т. Е. Ваше число будет представлено суммирующей серией 2 ^ (- n), где n - любое целое число от 1 до (размер мантиссы), возведенное в некоторую экспоненту N. Используйте decimal для финансовых расчетов.

Также помните, что чтение / запись 64-битных слов на 32-битном процессоре не являются атомарными и, следовательно, не являются поточно-ориентированными. В общем, старайтесь не ожидать, что разделяемое изменяемое состояние всегда безопасно для чтения.

...