Каково внутреннее представление inf и NaN?

использовать подзапрос, а затем отфильтровать a.value1=1 в предложении where

select * from
( 
Select a.value1,b.value2,c.value3 
        from a join b on a.some_value=b.some_value1 
        join c on c.Some_othr_value=b.some_diff_value 
    where your conditions
)AA where a.value1=1
10
задан Pete 12 March 2009 в 19:16
поделиться

2 ответа

Конкретно из ссылки Песто:

Стандартное представление плавающей точки одинарной точности IEEE требует слова на 32 бита, которое может быть представлено, как пронумеровано от 0 до 31, слева направо. Первый бит является знаковым битом, S, следующие восемь битов являются битами экспоненты,'E', и заключительные 23 бита являются частью'F':

S EEEEEEEE FFFFFFFFFFFFFFFFFFFFFFF  
0 1      8 9                    31  

Значение V представленный словом может быть определен следующим образом:

  • Если E=255 и F является ненулевым, затем V=NaN ("Не число")
  • Если E=255 и F нуль и S 1, затем V=-Infinity
  • Если E=255 и F нуль и S 0, затем V=Infinity
  • Если 0<E<255 затем V=(-1)**S * 2 ** (E-127) * (1.F) где"1.F"предназначается для представления двоичного числа, созданного путем добавления префикса F с неявным продвижением 1 и двоичная точка.
  • Если E=0 и F является ненулевым, затем V=(-1)**S * 2 ** (-126) * (0.F) Они "не нормализованы" значения.
  • Если E=0 и F нуль и S 1, затем V=-0
  • Если E=0 и F нуль и S 0, затем V=0
21
ответ дан 3 December 2019 в 15:06
поделиться

Большинство представлений с плавающей точкой основано на стандарте IEEE, которому определили установленные образцы для Inf и NaN.

9
ответ дан 3 December 2019 в 15:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: