Javascript–位元運算符

來源:互聯網
上載者:User

1.NOT

位元運算符NOT由~表示.NOT運算子的實質是對數字求負,然後減1.

位元運算符NOT是三步的處理過程.

a.把運算子轉換成32位元字

b.把二進位形式轉換成它的二進位反碼

c.把二進位反碼轉換成浮點數

例子:

        var num=10;        document.write(~num);
結果:
-11
2.AND
位元運算符AND由&表示.直接對數位二進位形式進行運算.運算規則如下:
第一個數字 第二個數字 結果
0 0 0
0 1 0
1 0 0
1 1 1

例子:

        var num1=10;//1010        var num2=11;//1011        document.write(num1 & num2);

結果:

10的二進位表示1010

3.OR

位元運算符OR由符號|表示.直接對二進位進行運算,規則如下:

第一個數字 第二個數字 結果
0 0 0
0 1 1
1 0 1
1 1 1

例子:

        var num1=10;//1010        var num2=11;//1011        document.write(num1 | num2);

結果:

11的二進位表示是1011

4.XOR

位元運算符XOR由符號^表示.直接對二進位進行運算.規則如下:

第一個數字 第二個數字 結果
0 0 0
0 1 1
1 0 1
1 1 0

例子:

        var num1=10;//1010        var num2=11;//1011        document.write(num1 ^ num2);

結果:

1的二進位表示是1

5.<<

左移運算子由<<表示.它把數字中所有位元向左移動指定的數量.

注意:

a.在左移數位時,數字右邊的空位由0來填充,使結果是完整的32位元字

b.左移操作保留數位符號位.

例子:

        document.write(10<<2+"<br/>");        document.write(-10<<2);

效果:

6.>>

有符號右移運算由>>表示.它將32位元字中的所有數字整體右移.同時保留該數的符號.

注意:

a.符號位保持不變

b.在右移數位時,數字左邊的空位由0填充

例子:

        document.write(10>>1);        document.write("<br/>");        document.write(-10>>1);

效果:

 

7.>>>

無符號右移由>>>表示.它將32位元字中的所有數字整體右移.

注意:

a.無符號右移運算用0填充所有空位.

b.對於整數,無符號右移和有符號右移結果一樣.

c.對於負數,由於左側補0,導致負數經過無符號右移後,變為一個正數

例如:

       document.write(-10>>>1);

結果:

運算過程:

-10

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0

經過無符號右移-10>>>1

0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1

結果:

2147483643

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.