作业帮 > 数学 > 作业

为何unsigned short是65535数值长度,short是32767数值长度

来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/05/14 15:12:13
为何unsigned short是65535数值长度,short是32767数值长度
首先指出你的一个错误的地方:不管是Unsigned short 还是shout他们在内寸中的数据长度都是4个字节.NOT你说的什么65535....不过我明白你想要问的问题是什么.你其实是想问unsigned shout最大表示范围为什么是65536而shout表示范围是0~32767,这一点我相信我把unsigned的中文意思说出来你就知道了,unsigned的中文是无符号,也就是说ubsigned shout是表示一个无符号的短整型,它的最大可表示的数字是2^4*8-1=65535,而shout是表示default情况下,它是有符号的,也就是说一半正一半负,符号位由最高位表示,0为正,1为负.所以shout可表示的范围是-32768~32767.可以看出不管是unsigned shout 还是shout它们都能表示2^4*8个数字,区别在于它们表示的范围不一样.
再问: 2^4*8-1//啥玩意呀? 4294967295 二进制//1111 1111 1111 1111 1111 1111 1111 1111 == 2^31 +2^30+ 2^0?
再答: 对不起,计算错了,是2^(2*8)-1
再问: shout 最大表示是 2^(2*8) ?
再答: shout可表示的范围是-32768~32767
再问: 最小是 - 2^2*8-1 ? 4294967295 二进制//1111 1111 1111 1111 1111 1111 1111 1111 == 2^31 +2^30+ 2^0?
再答: shout可表示的范围是-32768~32767,最小是1000 0000 0000 0000最大是0111 1111 1111 1111具体换算方法你要查资料,这解释的话就会很长.