为了账号安全,请及时绑定邮箱和手机立即绑定

二进制基础

难度入门
时长50分
学习人数
综合评分9.07
610人评价 查看评价
9.4 内容实用
9.0 简洁易懂
8.8 逻辑清晰
  • 小端法:位字节排放在内存的地址端即该值的起始地址,位字节排放在内存的地址端

    大端法:位字节排放在内存的地址端即该值的起始地址,位字节排放在内存的地址端


    • << 左移 用来将一个数的各二进制位全部左移N位,高位舍弃,低位补0。

           如果左移舍弃的高位不包含1,则每左移一位,相当于该数乘以2。


    •  >> 右移 将一个数的各二进制位右移N位,移到右端的低位被舍弃,对于无符号数,高位补0。 

          每右移一位,则相当于该数除以2。

    • >>> 无符号右移运算 将一个数的各二进制位右移N位,高位补0。

    •  & 按位与 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0。

      特殊用法:

         (1) 清零。如果想将一个单元清零,即使其全部二进制位为0,只要与一个各位都为零的数值相与,结果为零。

          (2)取一个数中的指定位

            x=1010 1110,取低四位,X&0000  1111= 0000 1110 即可得到。

    方法:找一个数,对应X要取的位,该数的对应位为1,其余位为零,此数与X进行“与运算”可以得到X中的指定位。

    •  l 按位或 两个相应的二进制位中只要有一个为1,该位的结果值为1,否则为0。

        特殊用法:

    (1)常用来对一个数据的某些位置1

    例:将x=1010 0000的低4位置1 ,用x| 0000 1111 =1010 1111 即可得到。

    方法:找一个数,对应X要取的位,该数的对应位为1,其余位为零,此数与X进行“运算”可以得到X中的某些位置1。

    • ^ 异或运算 两个相应位为“异”(值不同),则该位为1,否则为0。

        特殊用法:

    (1)使特定位翻转,找一个数,对应X要翻转的位,各数的对应位为1,其余位为0,此数与X进行“异或运算”即可。

    例:将x=1010 1110的低4位翻转 ,用x^ 0000 1111 =1010 0001即可得到。

    (2)与0异或,保留原值

    两个变量交换值的方法

    1、借助第三个变量实现

    2、利用加减法实现

    A=A+B;B=A-B;A=A-B;

    3、异或运算实现,效率最高的

    A=A^B;B=A^B;A=A^B;

    • ~取反运算

      将二进制数按位取反,即将0变1,1变0

    • 原码 一个整数按照绝对值大小转换成的二进制数称为码。

    • 反码 将二进制数按位取反,所得的新二进制数称为原二进制数的反码。

    • 补码 反码加1称为补码

        负数以正数的补码形式表示

      计算1开头的二进制

        1、补码减1得到反码

       2、反码取反得到原码

       3、计算原码,取相反数

    正数:原码=反码=补码 负数:反码=原码的所有位(符号位除外)取反 补码=反码+1


    01:30
    看视频
  • 二进制,六十进制,二十进制,三百六十进制,十六进制。
  • 二进制转换成其<!--此处有图片-->他进制

  • 交换两个数:

    借助第三个变量

    利用加减法实现两个变量的交换,A=A+B;B=A-B;A=A-B;

    利用异或或运算来实现,也是效率最高,A=A^B;B=A^B;A=A^B;

  • 大小端

    小端法(Little-Endian)

    低位字节排放在内存的低地址端即该值的起始地址,高位字节排放在内存的高地址端

    高端法(Big-Endian)

    高位字节排放在内存的低地址端即该值的起始地址,低位字节排放在内存的高地址端


  • 原码:一个整数按照绝对值大小转换成的二进制数称为原码

    反码:将二进制数按位取反,取得的新二进制数称为原二进制数的反码。

    补码:反码加1称为补码

  • 二进制算法:除法除2,直至商为0
  • 十进制转换二进制原理:

    二进制逢二进位,十进制数x第一次除2取到的余数是二进制数y的个位(x中含有多少个2,多余的肯定是个位(x2^0)),商k1是x降低一位数的值大小,第二次除2取到的余数是y的十位大小(含有多少个4,多余是十位(x2^1))以此类推

    好比十进制数求各位数值,第一次除10余数是个位(x10^0),商除10余数是十位(x10^1)

    十进制数x同样可以第一次除2求个位,第二次x除4求后两位个位十位大小(注意这个值不是直接各位上的位数,而是后两位形成的新数的大小,所以需要减去个位再上一次计算的除数(似乎叫做权值))

    以此类推就可以求到各位的数字

    好比十位数第一次除10余数是个位,第二次原数除100求得是十位+个位形成的新数的大小,需要减去个位再除以上次计算的除数10,下一轮计算就需要除100这样,每一次的余数只需减去上一次的余数即可

    总结:短除法化成二进制就是不断的除以二算出余数,其除以二的实质就是左移一位,(第一次是不够2余下的所以是个位,第二次是够2不够4的所以是十位)是想十进制的数字除以十就是相当于左移一位,剩下来的余数就是该位的数字同理化成二进制

  • 程序中所有的数在内存中都是以二进制的形式存储的

首页上一页1234567下一页尾页

举报

0/150
提交
取消
课程须知
小伙伴们注意啦!~本门课程前三章的内容可以零基础学习。第四、五章的内容在学习前需要了解Java的基础知识。
老师告诉你能学到什么?
通过课程的学习,您可以了解二进制的由来,掌握二进制和其他进制之间进行进制转换的方法,掌握如何进行位运算,为所有计算机课程的学习提供基础。
意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!