请问若整型数据int占两字节,数据取值范围怎么算的?

发布网友 发布时间:2022-03-25 18:03

我来回答

6个回答

热心网友 时间:2022-03-25 19:32

1B(byte,字节)= 8 bit

2B(byte,字节)=16bit

16bit代表可以储存的最大数为2^16=65536

若不考虑符号问题,那么可以储存0-65536个数。

考虑符号问题,二进制第一位为符号位,则储存的最大数为2^15=32768

0不属于正数也不属于负数,所以有符号的情况下,储存的数字为-32768——+32767

扩展资料:

字节(Byte )是计算机信息技术用于计量存储容量的一种计量单位,作为一个单位来处理的一个二进制数字串,是构成信息的一个小单位。最常用的字节是八位的字节,即它包含八位的二进制数。

ASCII码:一个英文字母(不分大小写)占一个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数。换算为十进制,最小值-128,最大值127。如一个ASCII码就是一个字节。

UTF-8编码:一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。中文标点占三个字节,英文标点占一个字节。

Unicode编码:一个英文等于两个字节,一个中文(含繁体)等于两个字节。中文标点占两个字节,英文标点。

常用的单位换算:

1KB=1024B;1MB=1024KB=1024×1024B

1B(byte,字节)= 8 bit

1KB(Kilobyte,千字节)=1024B= 2^10 B

1MB(Megabyte,兆字节,百万字节,简称“兆”)=1024KB= 2^20 B

1GB(Gigabyte,吉字节,十亿字节,又称“千兆”)=1024MB= 2^30 B

1TB(Terabyte,万亿字节,太字节)=1024GB= 2^40 B

参考资料来源:百度百科-字节

热心网友 时间:2022-03-25 20:50

1个字节是8位,每位可以用0、1表示,所以,2个字节16位的整型数,最大可以表示的数字是:

2的16次方 = 65536 所以,无符号整型的取值范围是 0 - 65536

如果是有符号整数,由于要加个符号位,所以,取值范围:

2的15次方 = (+-)32768

又由于,二进制的第一位是用来表示正负号的,0表示正,1表示负。这里有一个问题:0本来既不是正数,也不是负数,但它占用了0000(十六进制0)的位置,因此有符号的整数类型范围中正数个数比负数少一个。

所以,带符号符号整型的取值范围是 -32768 - 32767

热心网友 时间:2022-03-25 22:25

“2的16次方 = 65536 所以,无符号整型的取值范围是 0 - 65536”这句话错了 应该是2的16次方-1

热心网友 时间:2022-03-26 00:16

正负数,在计算机中,只是使用补码存放。

两字节,是 16 位二进制。

其代表的数字,共有 2^16 = 65536 个。

用其中的 1/2 代表负数,就是 32768 个负数。

那么,负数的范围,不就是从-1 到-32768 吗?

这就够了,不需要再做太多的推导。

------

正负数,在计算机中,只是使用补码存放。

如果从原码反码,来分析补码,这就困难了。

因为,原码和反码,最小,只能达到-32767。

根本就无法说明:补码最小是-32768。

热心网友 时间:2022-03-26 02:24

原码是一个输的二进制码,
如果符号位(第一位)为0(即正数)则反码补码都相同
否则反码是除符号位一外的其余数都变成相反的数(即0→1或1→0)
补码实在反码的基础上加1

热心网友 时间:2022-03-26 04:49

-32768的原码是1000 0000 0000 0000 取反码是1111 1111 1111 1111,然后加1取补码1000 0000 0000 0000。5分拿好不谢

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com