Мое приложение должно выдавать одинаковые результаты c на всех машинах. Я понимаю, что float / double math в C# не является детерминированным c, но как насчет двоичного представления литеральных значений?
float x = 1.23f;
Как 1.23f
будет храниться в скомпилированном файле DLL? Как двоичное представление 32-битного формата IEEE-754 с плавающей точкой? Или как какое-то промежуточное представление, которое потребует преобразования в IEEE-754 с помощью джиттера на целевой машине (потенциальный источник неопределенности)?
Я понимаю, почему операции с плавающей запятой в C# не являются deterministi c. Я спрашиваю ТОЛЬКО, является ли двоичное представление литералов детерминированным c. Пожалуйста, никаких ответов о детерминизме с плавающей точкой в целом.