js 位运算符 以及 心算十进制二进制相互转换

位运算符

|(或) 运算

有1即为1,双0才为0

1 31| 2 = 11111 | 10 = 11111 = 3
2 3 | 4 = 11 | 100 = 111 = 7
3 6 | 7 = 110 | 111 = 111 = 7
4 10 | 9 = 1010 | 1001 = 1011 = 11

&(与) 运算

有0即为0,双1才为1

1 31 & 2 = 11111 & 10 = 00010 = 2
2 3 & 4 = 11 & 100 = 000 = 0
3 6 & 7 = 110 & 111 = 110 = 6
4 10 & 9 = 1010 & 1001 = 1000 = 8

^(异或) 运算

不等为即为1,相等为0

1 31 ^ 2 = 11111 & 10 = 11101 = 29
2 3 & 4 = 11 & 100 = 111 = 7
3 6 & 7 = 110 & 111 = 001 = 1
4 10 & 9 = 1010 & 1001 = 0011 = 3

<<(左移位) 运算

移几位,右侧补几个0

1 31 << 2 = 11111 + 00 = 1111100 = 124
2 3 << 4 = 11 + 0000 = 110000 = 48
3 6 << 3 = 110 + 000 = 110000 = 48
4 10 << 4 = 1010 + 0000 = 10100000 = 160

>>(右移位) 运算

移几位,左侧补几个0,右侧删除相应位数

1 31 >> 2 = 00 + 11111 = 00111 = 7
2 60 >> 4 = 0000 + 111100 = 000011 = 3
3 27 >> 3 = 000 + 11011 = 00011 = 3
4 100 >> 4 = 0000 + 1100100 = 0000110 = 6

心算十进制二进制相互转换

例如想要知道十进制108在二进制下是多少

老方法:

新方法:

原文地址:https://www.cnblogs.com/bensun/p/10214997.html

时间: 2024-11-10 09:36:16

js 位运算符 以及 心算十进制二进制相互转换的相关文章

类型转换、运算符、位运算符【以及原码、反码、补码】

1.类型转换 php中的‘+’与js有区别,php中+只是算术运算符[更偏向转化为数字].js更偏向转化为字符串 php本身的自动转换类型便符合大多数对类型的处理.[也有强制转换的情形出现] [注意转换关系:字符串转换成数字类型,开头的那部分字符串能够转化为数字(还要判断浮点型和整型)] 2.转换成布尔型[实现流程控制的关键] 以下值为false: (1)布尔值为false (2)整型值为0 (3)浮点型为0.0 (4)空字符串[字符串'0'(相当于是字符串做数组时是一个空字符串),区别,注意‘

进制转换及位运算符

二进制与十进制之间的转换 1 十进制转二进制 方法为:十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止. (具体用法如下图) 2 二进制转十进制 方法为:把二进制数按权展开.相加即得十进制数. (具体用法如下图) END 百度经验:jingyan.baidu.com 二进制与八进制之间的转换 1 二进制转八进制 方法为:3位二进制数按权展开相加得到1位八进制数.(注意事项,3位二进制转成八进制是从右到左开始转换,不足时补0). (具体用

JS位操作符

位运算 NOT位运算 NOT 由否定号(~)表示,它是 ECMAScript 中为数不多的与二进制算术有关的运算符之一. 位运算 NOT 是三步的处理过程: 1.把运算数转换成 32 位数字2.把二进制数转换成它的二进制反码3.把二进制数转换成浮点数例如: var iNum1 = 25;  //25 等于      00000000000000000000000000011001var iNum2 = ~iNum1; //转换为 11111111111111111111111111100110a

java 二进制 位运算符

位运算符 & | ~ ^& : 对两个二进制数按位做与运算,即 1 & 0 = 0; 1 & 1 = 1; 0 & 0 = 0;| : 对两个二进制数按位做或运算,即 1 & 0 = 1; 1 & 1 = 1; 0 & 0 = 0;~ : 对一个二进制数按位取反,即 ~1 = 0; ~0 = 1;^ : 对两个二进制数按位做异或运算,即 1 ^ 1 = 0; 1 ^ 0 = 1, 0 ^ 0 = 0; 相同取0,不同取1另:1)    十进制

JS的位运算符

重温整数 ECMAScript整数有两种类型,有符号整数(允许用正数和负数)和无符号整数(只允许用正数).在ECMAScript中,所有整数字面量默认都是有符号整数. 有符号整数,数值范围从-2147483648到2147483647:无符号整数,数值范围从0到4294967295.记住,所有整数字面量都默认存储为有符号整数,只有ECMAScript的位运算符才能创建无符号整数. 把无符号整数转换为字符串,只返回有效位.也就是前面都是0的就不返回了. var i = 18, j = -18; a

位运算符&amp;&amp;二进制

位运算符 二进制和十进制之间的转换 a. 十进制-->二进制 除2的操作,直到除到0为止,获得的余数倒序就是十进制对应的二进制 byte 1一个字节 8位(二进制的位数) short 2 16 int 4 32 long 8位 64 byte b=2; 2 -> 10 3 -> 11 15 -> 1111 13 -> 1101 b. 二进制-->十进制 1011 --> 11 2^3*1 + 2^2*0 + 2^1*1 + 2^0*1 8+0+2+1 11001

JS中的逻辑运算符&amp;&amp;、||,位运算符|,&amp;

1.JS中的||符号: 运算方法: 只要"||"前面为false,不管"||"后面是true还是false,都返回"||"后面的值. 只要"||"前面为true,不管"||"后面是true还是false,都返回"||"前面的值. 总结:真前假后 2.JS中的&&符号: 运算方法: 只要"&&"前面是false,无论"&

【js】逻辑运算符 &amp;&amp; 、|| ,位运算符 | 、&amp;

1.JS中的||符号: 运算方法: 只要“||”前面为false,不管“||”后面是true还是false,都返回“||”后面的值. 只要“||”前面为true,不管“||”后面是true还是false,都返回“||”前面的值. 总结:真前假后 2.JS中的&&符号: 运算方法: 只要“&&”前面是false,无论“&&”后面是true还是false,结果都将返“&&”前面的值; 只要“&&”前面是true,无论“&&

精讲JS逻辑运算符&amp;&amp;、||,位运算符|,&amp;

1.JS中的||符号: 运算方法: 只要“||”前面为false,不管“||”后面是true还是false,都返回“||”后面的值. 只要“||”前面为true,不管“||”后面是true还是false,都返回“||”前面的值. 总结:真前假后 2.JS中的&&符号: 运算方法: 只要“&&”前面是false,无论“&&”后面是true还是false,结果都将返“&&”前面的值; 只要“&&”前面是true,无论“&&