zoukankan      html  css  js  c++  java
  • 以8位二进制整数为什么最小数是-128的问题

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

      正数:

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

      负数:

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

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

      需要引入一个概念:模

      正数:

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

      负数:

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

     感谢下面两位大神:

    参考地址一

    参考地址二

  • 相关阅读:
    scws安装
    Redis使用
    安装redis服务
    mkdir(): Permission denied
    Zabbix告警脚本-邮件
    Zabbix告警脚本-微信
    Zabbix实现微信告警
    Docker学习之安装mysql
    docker安装使用
    centos6与centos7区别
  • 原文地址:https://www.cnblogs.com/patrick-king/p/11578620.html
Copyright © 2011-2022 走看看