前端学习笔记之六——JS位操作符练习题

      作业题如下:

         

--------------------------------------------------

    位操作符还不是很熟悉,借助这个题正好补一下。

    十进制转二进制方法:将十进制数除以2取第一个余数,然后用商不断除以2,不断取第二、第三个……余数,直到商为0时止,然后将第一个、第二个……从右向左排列,高位补0。

    二进制转十进制方法:从二进制数最右边的数开始,从左至右,每位数依次乘以2的0次方、2的1次方、2的2次方,然后将这些乘方结果相加,即为十进制数。

    所以,本道题十进制22转为二进制过程:22/2=11余数为0;11/2=5余数为1;5/2=2余数为1;2/2=1余数为0;1/2=0余数为1。十进制22的二进制为10110。

    十进制3转为二进制过程:3/2=1余数为1;1/2=0余数为1。十进制3转为二进制11。

   另外&运算,对应位数比较,有一个为0则为0,两个同时为1才得1。

    所以10110&00011,运算结果为00010,此为二进制。再转换为十进制即为:1*2的1次方+0乘以2的0次方=2。

原文地址:https://www.cnblogs.com/vivian2016/p/5839859.html