官术网_书友最值得收藏!

2.3.6 位運(yùn)算符

位運(yùn)算符是用來對(duì)二進(jìn)制數(shù)進(jìn)行計(jì)算的,當(dāng)使用位運(yùn)算符時(shí),JavaScript會(huì)先把其他進(jìn)制(十進(jìn)制、八進(jìn)制和十六進(jìn)制)的數(shù)轉(zhuǎn)換成32位的二進(jìn)制數(shù),再來進(jìn)行運(yùn)算,位運(yùn)算符包括以下7種。

1)與運(yùn)算(&):二元運(yùn)算符,將兩個(gè)操作數(shù)進(jìn)行邏輯與運(yùn)算后,結(jié)果以十進(jìn)制數(shù)的形式返回,例如:

2)或運(yùn)算(|):二元運(yùn)算符,將兩個(gè)操作數(shù)進(jìn)行邏輯或運(yùn)算后,結(jié)果以十進(jìn)制數(shù)的形式返回,例如:

3)異或運(yùn)算(^):二元運(yùn)算符,將兩個(gè)操作數(shù)進(jìn)行邏輯異或運(yùn)算后,結(jié)果以十進(jìn)制數(shù)的形式返回,例如:

4)非運(yùn)算(~):一元運(yùn)算符,對(duì)操作數(shù)的每一位進(jìn)行非運(yùn)算后,結(jié)果以十進(jìn)制數(shù)的形式返回,由于進(jìn)行非運(yùn)算后原數(shù)的符號(hào)位也要取反,因此原數(shù)的符號(hào)會(huì)改變,例如:

5)左移運(yùn)算(<<):二元運(yùn)算符,對(duì)第一個(gè)操作數(shù)的二進(jìn)制數(shù)進(jìn)行所有位數(shù)向左移動(dòng)n位的操作,其中n等于第二個(gè)操作數(shù)的值,右側(cè)空出來的位置用0來填補(bǔ),例如:

6)無符號(hào)右移運(yùn)算(>>>):二元運(yùn)算符,對(duì)第一個(gè)操作數(shù)的二進(jìn)制數(shù)進(jìn)行所有位數(shù)向右移動(dòng)n位的操作,其中n等于第二個(gè)操作數(shù)的值,左側(cè)空出來的位置用0來填補(bǔ),例如:

7)帶符號(hào)右移運(yùn)算(>>):二元運(yùn)算符,對(duì)第一個(gè)操作數(shù)的二進(jìn)制數(shù)進(jìn)行所有位數(shù)向右移動(dòng)n位的操作,其中n等于第二個(gè)操作數(shù)的值。左側(cè)空出來的位置根據(jù)符號(hào)填補(bǔ),如果是正數(shù)(第32位為0),則用0填補(bǔ),與無符號(hào)右移運(yùn)算結(jié)果相同;但如果是負(fù)數(shù)(第32位為1),則用1來填補(bǔ),例如:

下面列出上述實(shí)例的代碼來驗(yàn)證其正確性:

輸出如圖2.28所示。

圖2.28 樣例輸出2.28

主站蜘蛛池模板: 秀山| 梅河口市| 玛多县| 平遥县| 池州市| 原阳县| 陇川县| 阜宁县| 新田县| 盐源县| 尼玛县| 普兰县| 宜良县| 英德市| 越西县| 江永县| 绩溪县| 铁岭县| 宁化县| 永和县| 康乐县| 澄城县| 南召县| 永春县| 云林县| 祥云县| 沁阳市| 旅游| 公安县| 乐昌市| 东山县| 清涧县| 岢岚县| 中方县| 晋城| 乐山市| 张北县| 文登市| 攀枝花市| 清河县| 邢台市|