2012年9月17日 星期一

JavaScript-7

我們接續 JavaScript-6 邏輯運算子
10.比較運算子

==:等於
!=:不等於
>:大於
<:小於
>=:大於等於
<=:小於等於

以上的運算子我們可以用下列程式看結果為True or False:
EX:
<script> 
document.write(3>2);  // 我們把比較運算子代進去
</script>
比較運算子比較容易了解也很常使用喔!
--------------------------------------------------------------------------

11.位元運算子

~: 就是 "Not"  (參考JavaScript-6)
<<: 左移
>>: 右移
>>>: 無符號右平移
&: AND
^:  XOR
|"  OR

這節比較難,大家可以先了解一下什麼是二進位? 簡單解釋的話一般我們使用的1~10阿拉伯數字就是所謂的十進位,因為是以十個數字作一次進位,如1~10下一個就是11了. 那二進位就是以兩個數字來做進位,我們目前是以0 1 來做二進位的進位方式,因為目前電腦儲存資料的方式設計成0和1的進位系統來做設計或是運算.至於二進位怎麼算呢? 我們要先有個基本概念電腦目前儲存資料的單位是什麼? 有 bit, byte , kb , MB , GB ,TB...等. 而一位元組等於八個位元--->也就是說
1 byte = 8 bit. 所以我們電腦最小的儲存單位就是一個位元bit,而一個位元組等於八個位元.
所以通常我們再計算二進位或是其它進位的時候會寫成8個0:
二進位系統:00000000---> 進一位--->00000001--->再進一位------->00000010
其它還有8進位和16進位等,詳細的進位運算大家可以google一下,在這邊就說到這裡~
~如果a=0,~a=1,b=1,~b=0
------------------------------------------------------------------------
<<: 如果a=3--->換算成二進位--->11,所以如果a=3(11) << 2的話呢?
           11
左移: 1100
所以左移2之後的a的二進位會是1100也就是十進位的12.
------------------------------------------------------------------------
>>: 和左移一樣,假設a=2(10)--->我們右移1,也就是 a>>1---> 得到結果 a=1 (1)
------------------------------------------------------------------------
>>>: 這是屬於邏輯位移的部份,
8的二進位:100
8>>>1: 010 等於2,看到紅色的0,只要是右移之後我們就補0上去~,所以沒有<<<邏輯左平移喔!
------------------------------------------------------------------------
&: 如果是a=1,b=3 那  a & b = 1.
a的二進位: 01
b的二進位: 11
我們可以用乘法的概念來看, 0 x 1 = 0 , 1 x 1 = 1 所以我們知道 a & b = 1.
------------------------------------------------------------------------
^:  如果是a=1,b=3 那  a & b = 1.
a的二進位: 01
b的二進位: 11
我們用一個口訣來看就可以,"相同為0,其餘為1" 所以 a ^ b = 2 (10).
------------------------------------------------------------------------
|:如果是a=1,b=3 那  a & b = 1.
a的二進位: 01
b的二進位: 11
我們可以用加法的概念來看, 0 + 1 = 1 , 1 + 1 = 1(都算1) 所以我們知道 a | b = 3(11).
------------------------------------------------------------------------

沒有留言:

張貼留言