代码之家  ›  专栏  ›  技术社区  ›  Corey Ogburn

有关在.NET中移动浮点数据类型的详细信息?

  •  1
  • Corey Ogburn  · 技术社区  · 15 年前

    如果我记得对的话,一个双精度浮点数可以分成三部分:符号位、指数和尾数。

    当一个双精度数移位时,是位移动了变量的整个二进制数,还是只移动了尾数?

    2 回复  |  直到 15 年前
        1
  •  5
  •   Jon Skeet    15 年前

    编辑:doh-忽略以前版本的答案。

    您不能移动浮点类型-至少在C中。

    另一方面,如果你要多次乘或被二除,你会看到我前面提到的:在标准化数字的范围内,左移将使指数增加一,右移将使指数减少一。在非正规数中,指数固定为0,因此尾数必须改变。

    编辑:要回答您的意见,如果指数为零,尾数为非零,则值表示次正态/非正态数。见 this page 有关IEEE754的更多信息,请参阅 .NET binary floating point .

        2
  •  1
  •   Peladao    15 年前

    据我所知,移位运算符只在.NET中的整数上定义。

    推荐文章