通过 EMCAScript6,我发现有一种方法可以表示二进制文字使用0b
or 0B
字首。我正在尝试它,但找不到表示负数的方法(因为它没有使用补码)。我错过了什么吗?我找不到实际规范中解释二进制文字的位置。
我想我可以通过类似的操作自己实现它~(num - 1)
or -num
:
function twosComplement(num) {
return ~(num - 1);
}
var flag = 0b100;
console.log(flag);
console.log(twosComplement(flag));
// is this output normal? I thought binary used a sign bit
console.log(twosComplement(flag).toString(2));
要输入负数,只需在文字前面加上前缀-
符号(一元减运算符):
-0b11010 // -26
二进制文字的规范在章节中数字文字.
相关片段:
数字常量 :: (...) 二进制整数常量
BinaryIntegerLiteral :: 0b 二进制数字
And BinaryDiggits
are 0
and 1
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)