int 类型取值范围的困惑
来源:学生作业帮 编辑:拍题作业网作业帮 分类:数学作业 时间:2024/04/30 20:06:56
int 类型取值范围的困惑
int类型在 内存占16位,取值范围是(-2的15次方) (2的15次方-1)
我想问的是 取值范围为什么不是(-2的15次方+1) (2的15次方-1)?
最小值(-2的15次方)是怎么来的?请用补码形式讲解
1楼的 用这种角度考虑~你的回答我同意.
2楼的 最大的正数就是01111111 11111111
但这不能说明最小的负数就是10000000 00000000
还有10000000 00000000=-(01111111 11111111 +1)=-2^15 我没看懂
但也请你们看下我的想法.
负数的补码 是其的绝对值取反加一,符号位变成1.
那(-2的15次方)的补码是 |-2^15 |取反加一,符号位变1.
但正整数最大值是 2^15 -1,|-2^15 |大于2^15 -1.
所以|-2^15 |的源码怎么来的,二进制是多少.
int类型在 内存占16位,取值范围是(-2的15次方) (2的15次方-1)
我想问的是 取值范围为什么不是(-2的15次方+1) (2的15次方-1)?
最小值(-2的15次方)是怎么来的?请用补码形式讲解
1楼的 用这种角度考虑~你的回答我同意.
2楼的 最大的正数就是01111111 11111111
但这不能说明最小的负数就是10000000 00000000
还有10000000 00000000=-(01111111 11111111 +1)=-2^15 我没看懂
但也请你们看下我的想法.
负数的补码 是其的绝对值取反加一,符号位变成1.
那(-2的15次方)的补码是 |-2^15 |取反加一,符号位变1.
但正整数最大值是 2^15 -1,|-2^15 |大于2^15 -1.
所以|-2^15 |的源码怎么来的,二进制是多少.
在内存中,正数的原码和补码是一样的,而负数的补码为其绝对值的原码按位取反后加1.
对于补码是0000000000000000时,对应的值为0
补码范围是0000000000000001-0111111111111111,对应的值为全部正整数,即1-2^15-1.
补码范围是1000000000000001-1111111111111111,对应的原码是100000000000001-111111111111111,值的范围是-1~-(2^15-1).
还有一个数是100000000000000,它不能使用补码计算公式进行计算的.是计算机内部直接用它来表示-2^15.你可以参考一下:http://blog.csdn.net/aiirr/archive/2007/12/28/1998545.aspx
对于补码是0000000000000000时,对应的值为0
补码范围是0000000000000001-0111111111111111,对应的值为全部正整数,即1-2^15-1.
补码范围是1000000000000001-1111111111111111,对应的原码是100000000000001-111111111111111,值的范围是-1~-(2^15-1).
还有一个数是100000000000000,它不能使用补码计算公式进行计算的.是计算机内部直接用它来表示-2^15.你可以参考一下:http://blog.csdn.net/aiirr/archive/2007/12/28/1998545.aspx
int 类型取值范围的困惑
C语言中putpixel(int x,int y,int color)中color的取值范围和具体介绍
VB习题:表达式 Int(5 * Rnd + 1) * Int(5 * Rnd - 1) 值的取值范围是多少?
int 形的整数的取值范围为什么是-32768-32767而不是-32767-32767
表达式INT(RAND()*90+10)的取值范围是[10,99] 这是为什么,
c语言中 int char uint uchar 的取值范围都是多少
像int,long这些c语言的语句怎么会有取值范围,同时它取值范围怎么用,它的取值范围到底是啥意思?
c语言变量的取值范围int 的取值范围是-32767 到 32767 请问-32767到32767是什么意思.意思是自然
指针是一个无符号整数(unsigned int)它是一个以当前系统寻址范围为取值范围的整数
Int(90 * Rnd(1))+10 意思是 取值范围 [10,100)吗
表达式 Int(5*Rnd+1) 的值的范围是
不等式求参数取值范围类型题中,成立,恒成立,有解三个概念的区别