什么是浮子?

Fla*_*la2 9 floating-point integer

是的,本世纪的noob问题......但是说实话,我实际上不知道浮点值到底是什么......更重要的是,浮点数和整数之间的差异.

提前致谢!

Nic*_*rey 12

看到

基本上,浮点数据类型是一种以科学计数法存储数值的方法.您可能会写2.3789 x 10 ^ 12,但由于计算机以二进制方式工作,因此它是一种二进制科学记数法.

浮点值,在软件中,交易幅度为绝对精度(你只有很多位可以传播).

整数是......好吧..整数.最右边(低位)表示2 ^ 0(例如,1),下一位表示2 ^ 1(2s),下一个2 ^ 2(4)等等.最左边(高位)位表示符号(0表示正数,1表示负数).这带来了负值:它们用所谓的二进制补码表示.要获得正数的两个补码:

  • 翻转所有位:零成为1,1成为零.
  • 将1添加到结果中,执行所有常规操作.

因此,8位正1(二进制,00000001)被转换为其负表示(11111111)

  1. 00000001 原始价值.
  2. 11111110 翻转它的位
  3. 11111111 加1

二进制补码表示法的优点是加法和减法使用相同的电路:通过加法实现减法:使用上面的+ 1/-1示例,得到零:添加最右边的位给出二进制10(十进制2).将其带到下一列,重复添加.进位通过符号位传播出来,最终值为00000000.

曾经有过使用其他表示的系统,但大多数(如果不是全部)现代计算机都使用二进制补码表示法.

然后,当然,有位序(big-endian v.little-endian),但这是另一个故事.

  • 生病的解释.感谢花时间写这篇文章. (2认同)