美文网首页
二进制学习

二进制学习

作者: 不过一书生 | 来源:发表于2019-03-25 12:31 被阅读0次

    1.机器数

    一个数在计算机中的二进制表现形式,叫做这个数的机器数.机器数是带符号的,在计算机用一个数的最高位存放符号,正数位为0,负数为1.

    例:+3(10)    ------     0000 0011(2)          计算机字长8位

    2.真值

    将带符号的机器数对应的真正数值称为机器数的真值.

    例:1000 0011(2) ------该数据代表的真值为-3(10).

    3.原码,反码,补码

    原码,反码,补码都是有符号的,用二进制表示数的方法,均有符号位和数值位构成

    ---原码

    源码是符号位加上(真值的绝对值),即用第一个位表示符号,其余位表示值.

    例:  +6(10)------原码为:0 000 0110;

    第一位是符号位,余下7位是数值位.因此,8位二进制的取值范围就是[-(2^7 - 1),+(2^7 _1)],即[-127,+127];

    ---反码

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

    例:+6(10)-----原码是:0 000 0110 ----反码是:0 000 0110;

    -6(10)---原码是:1 000 0110 ---反码是:1 111 1001;

    ---补码

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

    例:+6(10) ------原码是:0 000 0110 ---补码不变:0 000 0110;

    -6(10) ----原码是:1 000 0110 ---补码是:1 111 1011;

    4.小结

    在计算机系统中,数值一律用补码来表示(存储).主要原因:使用补码,可以将符号位和其他位统一处理;同时,减法也可按加法来处理.另外,用俩个补码表示的数相加是,如果最高位(符号位)有进位,则进位被舍弃;补码与原码的转换过程几乎是相同的

    相关文章

      网友评论

          本文标题:二进制学习

          本文链接:https://www.haomeiwen.com/subject/ishvvqtx.html