char的取值为什么是 |
您所在的位置:网站首页 › 为什么补码范围是-128~+127 › char的取值为什么是 |
首先,我们要知道计算机里面所有的数都是用补码表示的,正数的补码是其本身,负数的补码是原码的反码加一。 127这个数值很好理解,char占一个字节(byte),含有8个bit位. 我们知道数字在计算机中是以二进制来存储的,最高位是符号位,0为正1为负 所以当char表示为正数时: 表示的数字有2的七次方 2^7=128个 ,从+0~127。 0 : 0000 0000 127:0111 1111 当char表示为负数时:表示的数字有2的七次方 2^7=128个 ,从-127~-0。 其中-0的原码是: 1000 0000 补码是:1 0000 0000 由于char只取8位,所以截断后变为0000 0000,这与+0所表示的数是一样的,所以为了不能浪费1000 0000这个数值,我们规定用1000 0000这个位来表示-128。 所以char的取值范围是 -128~127。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |