zoukankan      html  css  js  c++  java
  • 原码补码反码

    原码反码补码

     

    首先是概念

    原码

    原码(true form)是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。

    示例:

    [+1] = 0000 0001

    [-1] = 1000 0001

    反码

    反码是数值存储的一种,多应用于系统环境设置,如linux平台的目录和文件的默认权限的设置umask,就是使用反码原理。在计算机内,定点数有3种表示法:原码、反码和补码。

     示例:

    正数的反码是其本身

    负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.

    [+1] = [00000001] = [00000001]

    [-1] = [10000001] = [11111110]

     补码:
    在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理;同时,加法和减法也可以统一处理。此外,补码与原码相互转换,其运算过程是相同的,不需要额外的硬件电路。
    示例:

    正数的补码就是其本身

    负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)

    [+1] = [00000001] = [00000001] = [00000001]

    [-1] = [10000001] = [11111110] = [11111111]

     编写程序,用二进制表示+7和-7
    输出:

     Java二进制7: 111

    Java二进制-7: 11111111111111111111111111111001

    7直接是111

    -7转化二进制的过程:

    (1)把-7转化成7,二进制是 111

    (2)Java中对于不满32位的int二进制自动补齐,所以变成了 (29个0)111

    (3)然后取反  (29个1)000

    (4)然后加1 (29个1)001

    所以可以看出Java使用补码来表示数据的
  • 相关阅读:
    战国时期主张合众联横的两位游士
    解读蓝帆“取势,明道,优术”
    云起龙骧
    取势明道优术_百度百科
    曾鸣[长江商学院教授]_互动百科
    E=MC2
    罗斯福6号_百度百科
    时尚大帝_百度视频
    群星云集 BOSS上海时装秀—情沪魅影- 在线观看
    林志玲“情沪魅影”时装片展情缘-中新网
  • 原文地址:https://www.cnblogs.com/dinghaisheng/p/9751734.html
Copyright © 2011-2022 走看看