黑马程序员技术交流社区

标题: 字节的取值范围 [打印本页]

作者: 李国峰    时间: 2015-8-7 10:32
标题: 字节的取值范围
本帖最后由 李国峰 于 2015-8-7 10:55 编辑

刚刚看了视频  看到了  这个字节的取值范围   是 -128~127 之间   这个-128的这个数值是怎么找出来的   不应该是 11111111 这个吗  怎么教学视频里面  说的是10000000   理解不上去了现在   还有就是这个趋势范围对我们将来编程这块影响大吗  是必须理解的问题吗(图片是教学视频截图)????  再问一个关于补码的问题    计算机中内部是以补码的形式储存的  那要反码有什么用??难道反码就是用来算补码的吗????

8%P)QOMTPER%{VWB0$QL[Z7.jpg (151.92 KB, 下载次数: 4)

教学视频截图

教学视频截图

作者: QQ2544    时间: 2015-8-7 12:01
首先你得知道补码这个概念。在计算机系统中,数值一律用补码来表示。
正数的补码和原码相同。比如+9的补码是0000 1001
负数的补码呢,有个符号位,符号位是1,其余的位按照原码取反,然后整个数再加一。也就是通常说的取反加一。
比如-7,原码是1000 0111()符号位是1,进行取反,得到1111 1000,然后加1,得到1111 1001,所以,-7的补码就是1111 1001,就是-7在计算机里表示的形式。
那么这样如果你懂了,你就能看出来,负数就是对绝对值取反加一获得补码。
-128的绝对值是128 1000 0000,取反后是0111 1111,加1后,变成1000 0000,

其实可以这么理解,去掉最高位的符号位的话,就出现了两个0,一个是0000 0000,另一个是1000 0000,第一个0作为0,第二个就不能是0了,用1000 0000表示-128也是合理的。
作者: QQ2544    时间: 2015-8-9 19:18
QQ2544 发表于 2015-8-7 12:01
首先你得知道补码这个概念。在计算机系统中,数值一律用补码来表示。
正数的补码和原码相同。比如+9的补码 ...

一起加油啊,嘿嘿




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2