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表示负数).这带来了负值:它们用所谓的二进制补码表示.要获得正数的两个补码:
因此,8位正1(二进制,00000001)被转换为其负表示(11111111)
00000001 原始价值.11111110 翻转它的位11111111 加1二进制补码表示法的优点是加法和减法使用相同的电路:通过加法实现减法:使用上面的+ 1/-1示例,得到零:添加最右边的位给出二进制10(十进制2).将其带到下一列,重复添加.进位通过符号位传播出来,最终值为00000000.
曾经有过使用其他表示的系统,但大多数(如果不是全部)现代计算机都使用二进制补码表示法.
然后,当然,有位序(big-endian v.little-endian),但这是另一个故事.