Cor*_*urn 1 .net bit-shift
如果我没记错,可以将double或float分为3个部分:符号位,指数和尾数.
当双移位时,这些位是否会移动变量的整个二进制,还是仅仅移动尾数?
Jon*_*eet 5
编辑:Doh - 忽略以前版本的答案.
你不能移动浮点类型 - 至少在C#中.
另一方面,如果你是多次或重复除以2,你会看到我之前提到的:在标准化数字范围内,向左移动会使指数增加1而向右移动会使指数减1.在非正规数字内,指数固定为0,因此尾数必须改变.
编辑:要回答您的注释,如果指数为零且尾数不为零,则值表示次正规/非正规数.有关IEEE 754的更多信息,请参阅此页面,我有一个关于.NET二进制浮点的页面.
归档时间:
15 年,6 月 前
查看次数:
3306 次
最近记录: