Реализация 32-битных операций с плавающей запятой или 64-битных длинных в JavaScript? - PullRequest
10 голосов
/ 26 января 2011

Кто-нибудь знает библиотеку JavaScript, которая точно реализует спецификацию IEEE 754 для 32-битных значений с плавающей точкой?Я спрашиваю, потому что я пытаюсь написать кросс-компилятор на JavaScript, и поскольку исходный язык предъявляет строгие требования к тому, чтобы значения с плавающей запятой соответствовали IEEE 754, сгенерированный код JavaScript должен это делать.Это означает, что я должен иметь возможность получать точно правильные значения IEEE 754 для сложения, вычитания, умножения и деления 32-разрядных чисел с плавающей точкой.К сожалению, стандартный тип JavaScript Number является 64-битным двойным, что даст результаты, отличные от ожидаемых.Проект действительно должен быть на JavaScript, и это единственный серьезный камень преткновения, который мне еще предстоит преодолеть.

Я также сталкиваюсь с этой проблемой с 64-битными значениями.

1 Ответ

8 голосов
/ 03 февраля 2011

Библиотека Closure имеет как минимум 64-битную реализацию.

...