130的二进制为什么第一位是1?

130的二进制为什么第一位是1?

· json · rss
Subscribe:

About

1.任何数(除了0)的二进制的第一位(最高位)都是1.

2.但是在计算机中,我们需要一些特殊的格式来保存数字。

哲学上说就是内容和形式的关系,形式适合内容,就促进内容的发展.(大雾)

你的意思可能是为什么补码下130的第一位还是1.

这是因为130在int8下其实不能表示,int8的有效表示范围是[-128,127].

因此你应该使用的是uint8,而uint8的有效表示范围是[0,255]因此最高位是1,且还能正常表示。