二进制转换及在java中的运用

来源:互联网 发布:查看linux文件编码格式 编辑:程序博客网 时间:2024/05/22 15:17

十进制转二进制:短除法
例:十进制57转二进制

除数 商 余数 2/57 28 1 2/28 14 0 2/14 7 0 2/7 3 1 2/3 1 1 2/1 0 1

将余数从下往上数,答案:111001。十进制转八进制:短除8.

位运算
位运算

  • 位运算的应用:
    • 按位与&:两位全为1,结果才为1
      1.清零。将一个单元清零(使其各位均为0),只需与一个各位均为0的数值相与,结果为0.
      2.取一个数中指定位。设要取11010110的低4位,则与00001111相与即可得到.
    • 按位或|:只要有一个为1,结果就为1
      用于对一个数中的指定位,置1。设要将11010110的低4位都变为1,则与00001111相或即可得到.
    • 异或运算^:两个相应位的值不同,结果才为1,否则为0
      1.使特定位翻转。设要将11010110的低4位翻转,则与00001111异或即可得到.
      2.与0相异或,保留原值.
      3.交换两个变量的值。设交换A与B的值,则A=A^B;B=A^B;A=A^B; 即可得到.
    • 取反运算~:将二进制数按位取反,即0变1,1变0
    • 左移运算<<:将一个运算对象的各二进制位全部左移若干位(左边的二进制位丢弃,右边补0)
    • 右移运算>>:将一个运算对象的各二进制位全部右移若干位,正数左补0,负数左补1,右边丢弃。操作数每右移一位,相当于该数除以2
    • 无符号右移运算>>>:各个位向右移指定的位数,右移后左边空出来的位用0填充,移出右边的位被丢弃
  • 负数以其正值的补码(反码+1)形式表示

java内置的进制转换
java内置的进制转换

字符串和字节互转
这里写图片描述

0 0
原创粉丝点击