Странное поведение python на машине с процессором ARM

Что может вызвать это странное поведение python?

Python 2.6.2 (r262:71600, May 31 2009, 03:55:41) [GCC 3.3.4] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> .1 1251938906.2350719 >>> .1 0.23507189750671387 >>> .1 0.0 >>> .1 -1073741823.0 >>> .1 -1073741823.0 >>> .1 -1073741823.0 >>> 

Он дает тот же результат для 0.1 , 0.5 , 5.1 , 0.0 и т. Д. Целые числа вернулись обратно ко мне правильно, но все с десятичной точкой дает мне сумасшедшие числа.

Это двоичный код python, скомпилированный для ARM, установленный через Optware на Synology DiskStation 101j.

Кто-нибудь видел что-то подобное раньше?

2 Solutions collect form web for “Странное поведение python на машине с процессором ARM”

Возможно, он скомпилирован для неправильной версии VFP .

Или у вашего ARM нет VFP, и вместо этого нужно использовать эмуляцию программного обеспечения, но двоичный код python пытается использовать аппаратное обеспечение.


РЕДАКТИРОВАТЬ

Ваш DS-101j построен на процессоре FW IXP420 BB , который является Intel XScale (armv5b) ( ссылка ). Он не поддерживает аппаратную поддержку с плавающей запятой. И «b» в armv5b означает Big Endian. У некоторых людей есть проблемы с построением, потому что gcc по умолчанию генерирует маленький код. Возможно, это проблема вашего программного обеспечения FP lib. Проверьте этот поиск для получения дополнительной информации.

Как сказал zxcat, это звучит так, как будто вы работаете на ARM без аппаратно-плавающей точки и разоренной библиотеки soft-float. Быстрый поиск не показывал, какой вариант ARM находится в DS101j; Кто-нибудь знает?

  • Распечатайте число с плавающей точкой в ​​нормальной форме, а не экспоненциальную
  • Импорт текстового файла дает ошибку
  • Почему fmod (1.0.0.1) == .1?
  • Как изменить тип данных фрейма данных pandas на строку с определенным форматом?
  • Функция для определения того, являются ли два числа почти равными при округлении до n значащих десятичных цифр
  • Зло в python decimal / float
  • Значения Float как словарный ключ
  • Как получить список ?
  • Эйлер # 26, как преобразовать рациональное число в строку с лучшей точностью?
  • Как заставить деление быть плавающей точкой? Отдел продолжает округлять до 0
  • Как использовать значение шага десятичного диапазона ()?
  • Python - лучший язык программирования в мире.