原码怎么算,C 语言中的原码怎么?

  数计算机二进制形式表示数分有符号数和无符号数原码、反码、补码都有符号定点数表示方法有符号定点数高位符号位0正1副下都8位整数例原码数本身二进制形式例1000001 -10000001 +1正数反码和补码都和原码相同负数反码其原码除符号位之外各位求反[-3]反=[10000011]反=11111100负数补码其原码除符号位之外各位求反之末位再加1[-3]补=[10000011]补=11111101数和补码逆要设立补码呢第了能让计算机执行减法:[a-b]补=a补+(-b)补第二原因了统正0和负0正零:00000000负零:10000000两数其实都0们原码却有同表示们补码样都00000000特别注意+1之有进位要直往前进位包括符号位(和反码同)[10000000]补=[10000000]反+1=11111111+1=(1)00000000=00000000(高位溢出了符号位变成了0)有人会问10000000补码表示哪数补码呢其实规定数表示-128所n位补码能表示范围-2^(n-1)2^(n-1)-1比n位原码能表示数多原码算。
  

原码怎么算,C  语言中的原码怎么?

版权声明:本站部分文章来源互联网,主要目的在于分享信息,版权归原作者所有,本站不拥有所有权,不承担相关法律责任,如有侵权请联系我们,本站将立刻删除。
(0)
上一篇 2022年5月24日 下午11:54
下一篇 2022年5月24日 下午11:55

相关推荐