JavaScript Tutorial.49


JS BITWISE OPERATIONS


JavaScript Bitwise Operators


OperatorNameDescription&2ビットのうちの1ビットが1 ORSETSであれば1^XORSETSであれば1~NOTIVERであれば全てのビット<>記号を右にシフトShifts右にシフト左から左へ、右から指定した桁数>>Zero fillを右へ、ゼロ点を左から右へ、指定した桁数に右へ、指定した桁数に右へ、指定した桁数に右へ、新しい桁数はすべて0になります.

EXAMPLES


OperationResultSame asResult5 & 110101 & 000100015 | 150101 | 00010101~ 510~010110105 << 1100101 << 110105 ^ 140101 ^ 000101005 >> 120101 >> 100105 >>> 120101 >>> 10010

JavaScript Uses 32 bits Bitwise Operands


JavaScriptは、64ビットの浮動小数点数を格納しますが、すべてのビット演算は32ビットのバイナリ数で実行されます.
ビット演算を実行する前に、JavaScriptは숫자32비트 부호 있는 정수に変換します.
ビット演算を実行すると、결과는 64비트 JavaScript数字に変換されます.
上記の例では、この4ビットの符号なし整数を用いた.したがって、~ 510に返却される.
JavaScriptは32ビットの符号付き整数を使用するため、10ではなく-6を返します.
0000 0000 0000 0000 0000 0000 0000 0101 (5)
1111 1111 1111 1111 1111 1111 1111 1010 (~5 = -6)
符号付き整数は、一番左のビットをマイナス記号(マイナス記号)として使用します.

Bitwise AND


1対のビットに対してビットANDを実行し、両方のビットが1であれば1を返す.

Bitwise OR


1対のビットに対してビットORを実行すると、2つのビットのうちの1つが1になり、1が返される.

Bitwise XOR


1対のビットに対してビットXORを実行し、2つのビットの値が異なる場合は1を返します.

JavaScript Bitwise AND (&)


ビット演算子ANDは、2ビットが1のときに1を返します.

JavaScript Bitwise OR (|)


ビット演算子ORは、2つのビットのうちの1つ以上が1の場合に1を返します.

JavaScript Bitwise XOR (^)


ビット演算子XORは、2つのビットが同時に1を返しません.

JavaScript Bitwise NOT (~)



JavaScript (Zero Fill) Bitwise Left Shift (<<)


すべてのbitを左にシフトし、一番右に0、一番左のbitを削除します.
5<1:5対応bitは1を左に移動します.

JavaScript (Sign Preserving) Bitwise Right Shift (>>)


これは右側の切り替えを維持する記号です.一番左のビット値をコピーして一番左に追加すると、一番右のビットが消えます.
シンボルを保持しますか?

JavaScript (Zero Fill) Right Shift (>>>)


一番左に0を追加し、一番右の値を削除します.

Binary Numbers


これは1 bitセットの整数だけで分かりやすいです.

さらに数桁設定すると、バイナリ・モードが表示されます.

JavaScript 2進数は2の보수形式で格納されます.
保守とは「二つの数の和が陣法の逆数(N)となる数」を指す.例えば、十進法4의 10의 보수는 6、十進法2의 10의 보수는 8である.報酬はコンピュータ上で負の整数を表現するために設計されています.計算機内部では四則演算を行う際に加算を担当する加算器のみが使用されるため,減算は加算変換フォーマットで計算しなければならない.すなわち、コンピュータ内部でA - Bを算出すると、Bの報酬(-B)が求められ、A + (-B)と算出される.
▶1の報酬:1桁あたりの値を1因数から与えられた2進数を減算すると、1の報酬が得られます.
例)2進数1010의 1의 보수는 0101.
▶2の報酬:1의 보수1을 더한 값は同じです.
例)バイナリ1010の2の報酬を取得する場合、バイナリ1010の1の報酬0101を取得し、1を加算して0110を得ることができる.
ソース:眼鏡開発者

Converting Decimal to Binary

  • 2dec >>> 0にビット化し、toString(n)に進化するでしょう、
  • <!DOCTYPE html>
    <html>
    <body>
    
    <h2>JavaScript Convert Decimal to Binary</h2>
    
    <p id="demo"></p>
    <p id="demo1"></p>
    <script>
    document.getElementById("demo").innerHTML = dec2bin(-5);
    function dec2bin(dec){
      return (dec >>> 0).toString(2);
    }
    
    document.getElementById("demo1").innerHTML = (5 >>> 0).toString(2);
    </script>
    
    </body>
    </html>
    

    Converting Binary to Decimal



    parseInt()


    ソース:昨日も今日も明日も
  • parseInt(string, radix);
  • パラメータ
    string
    -数値に変換する文字列
    radix
    - optional
    -string文字列の読み方(数字の進数)
    -2~36
    戻り値
    -stringを整数に変換する値を返します.stringの最初の文字を整数に変更できない場合は、「番号なし」(Not a Number)の値を返します.
  • parseInt("10"); // 10文字列「10」を数値に変換して整数10を返します.
  • parseInt("-10"); // -10文字列「-10」を数値に変換し、整数の負の値-10を返します.
  • parseInt("10.9"); // 10文字列タイプの実数値は、小数点を削除した後に整数値のみを返します.
  • parseInt(10); // 10渡された値が文字列ではなく、他のタイプのパラメータである場合、パラメータは文字列に変換されて処理されます.
  • parseInt("10n"); // 10 parseInt("10nnn13"); // 10文字列の最初の文字が数字で、次に数字以外の文字列が表示された場合、数値以外の文字の値は無視され、前の数値のみが整数に変換されます.
  • parseInt(" 10"); // 10文字列の最初の文字は数値でなければなりませんが、最初のスペースを使用できます.
  • parseInt("10 "); // 10文字列の最初の文字が数字の場合、後のスペースは無視されます.
  • parseInt("k10"); // NaN文字列の最初の文字が数字でない場合は、「数値以外」(Not a Number)を返します.
  • parseInt(""); // NaN文字列にスペースを入力すると、文字列の最初の文字が数値ではないため、「番号なし」(Not a Number)が返されます.