十进制转二进制and位运算符

时间:2021-10-19 17:20:47

先给大家送个福利!

---------------简单口算--------------------------

  10 >>  1010 

  除2取余倒写

/*
十进制转二进制
规则是:除二取余倒写10
10/2 0
5/2 1
2/2 0
1
*/
------------------------------------------干货---------------------------------------------------------------

最近在复习基础 看到位运算符 & | ^ ~ >> <<
&: 两个位置的同时为1结果就为1否则为0
|:两个位置只要有一个为1结果就为1否则为0
^:两个位置不相等就为1,否则为0
~: 取反,1的话结果是0 0的话结果是1
M >> N : 把M的二进制向右移动N位, 则十进制的操作数每移动一次除以2,并丢弃非整余数
M << N: 把M的二进制向左移动N位,则二进制的操作数每移动一位乘以2
   
2&5的运算
/*
010
& 101
= 000(十进制为0)
*/
2|5的运算
/*
010
| 101
= 111(十进制为7)
*/
2^5的运算
/*
010
^ 101
= 111(十进制为7)
*/
~2的运算
/*
~010
=101(十进制为:5)
*/
5<<2
/*
5的二进制:101
向左移动两位就是10100
---------------------
或者5*2*2
结果就是20
*/
5>>2
/*
5的二进制:101
向左移动两位就是001
(舍掉后边的01 给前边加两个0)
---------------------
或者5/2/2
结果就是1
*/

 

--------------------------------研究了一下,简单的规则----------------------------------------

0->000            7->111

1->001            6->110

2->010            5->101

3->011            4->100



----------------------------- 电脑运算-----------------------------------

十进制转二进制

js代码
alert(parseInt("1010", 2))

Result:10

二进制转十进制

var i = 987654321
alert((i).toString(
2))

Result:1010

 

-------------------------最后大奉送----------------------------------

十进制转八进制parseInt(num).toString(8) 
十进制转十六进制parseInt(num).toString(16) 
二进制转十进制parseInt(num,2) 
八进制转十进制parseInt(num,8) 
十六进制转十进制parseInt(num,16) 
二进制转八进制parseInt(num,2).toString(8) 
八进制转二进制parseInt(num,8).toString(2) 
二进制转十六进制parseInt(num,2).toString(16) 
十六进制转二进制parseInt(num,16).toString(2) 
八进制转十六进制parseInt(num,8).toString(16) 
十六进制转八进制parseInt(num,16).toString(8)