以8位二进制整数为什么最小数是-128的问题


8位二进制的数转为10进制:

  正数:

    比如1,一定要转为00000001(原码),高位是0(补码等于原码),直接计算得十进制1,

  负数:

    比如11111111(原码),最高位是1,表示负数;符号位不变其他位取反再加一,取反为10000000(反码),然后加一为10000001(补码),表示十进制-1

十进制数转为8位二进制数:

  需要引入一个概念:模

  正数:

    比如5,二进制数字为 00000101,正数计算机存储的数字与转化的二进制相等,为00000101

  负数:

    比如-5,二进制存储的数字为(256-5=251=11111011)(这里不需要考虑符号位),十进制的负数表达方式为 【十进制负数的二进制表达方式就是它绝对值的补数】,这里因为模是256,补数就是251

 感谢下面两位大神:

参考地址一

参考地址二


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM