八位二进制数为什么表示范围(-128~~+127)理解

  • 计算机对带符号数的表示有三种方法:原码、反码和补码。
  • 8位原码和反码能够表示数的范围是-127~127。
  • 8位补码能够表示数的范围是 -128~127。
  • 范围是-128~127,那肯定是用补码表示的。 10000000-11111111表示-128到-1, 00000000-01111111表示0-127 补码的1111 1111转换成原码就是1000 0001,也就是-1,补码就是二进制表示负数的一种方法。
  • 引入了补码概念:负数的补码就是对反码加一,而正数不变,正数的原码反码补码是一样的。在补码中用(-128)代替了(-0),所以补码的表示范围为:(-128~0~127)共256个。
  • 注意:-128)没有相对应的原码和反码,(-128) = (10000000)。
  • 所谓原码就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。
  • 反码表示法规定:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。
  • 补码表示法规定:正数的补码与其原码相同;负数的补码是在其反码的末位加1。
posted @ 2016-07-19 12:41  huangyb  阅读(18250)  评论(0编辑  收藏  举报