int类型在计算机中的储存
说起,int类型在计算机中的储存,首先要解释的就是原码、补码、反码这三个概念了。因为计算机内部储存的都是补码。
原码
对于int类型来说,这里我们按照常见的四个字节讲解,四个字节32个bit。第一位是符号位,0代表正数,1代表负数。所以int类型最大的整数,为
0 1 1 1 | 1 1 1 1 | 1 1 1 1 | 1 1 1 1 | 1 1 1 1 | 1 1 1 1 | 1 1 1 1 | 1 1 1 1 也就是2 ^ 31 - 1 = 2147483647。
最小同理值就是 - 2147483648。
反码
正数的反码,就是起原码。负数的源码,是除了符号位之外,按位取反。0变1,1变0。
补码
正数的补码也是反码,但是负数的补码就是反码加一。
举例
-559039827对应的
- 原码
1 0 1 0|0 0 0 1|0 1 0 1|0 0 1 0|0 1 0 0|0 1 0 1|0 1 0 1|0 0 1 1 - 补码
1 1 0 1|1 1 1 0|1 0 1 0|1 1 0 1|1 0 1 1|1 0 1 0|1 0 1 0|1 1 0 0 - 补码
1 1 0 1|1 1 1 0|1 0 1 0|1 1 0 1|1 0 1 1|1 0 1 0|1 0 1 0|1 1 0 1
有时我们会写为
0xDEADBAAD
显示的小序端储存,如下’\xad\xba\xad\xde’
本文详细介绍了计算机中int类型数据的储存方式,包括原码、反码和补码的概念。以32位为例,第一位作为符号位,其余31位表示数值。正数的原码和补码相同,而负数的补码是其反码加一。以-559039827为例展示了其原码和补码的转换,并提到了十六进制表示法(0xDEADBAAD)。此外,还提及了小端储存的显示方式。
&spm=1001.2101.3001.5002&articleId=114004550&d=1&t=3&u=f24022789187499aa8dfcfa12ec266ad)
1020

被折叠的 条评论
为什么被折叠?



