网站大量收购独家精品文档,联系QQ:2885784924

位元逻辑运算子.ppt

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
位元逻辑运算子.ppt

邏輯運算子 邏輯運算子也是運用在邏輯判斷的時候,可控制程式的流程,通常是用在兩個表示式之間的關係判斷 。 4-2 認識運算子 運算子 功能 用法 AND ab ac || OR ab || ac ! NOT !(ab) 邏輯運算子 || (或)運算子 4-2 認識運算子 || 邏輯運算子 A 1 0 B 1 1 1 0 1 0 邏輯運算子 (且) 運算子 4-2 認識運算子 邏輯運算子 A 1 0 B 1 1 0 0 0 0 邏輯運算子 ! (否)運算子 4-2 認識運算子 A 1 0 !運算子 0 1 範例CH04_08.c /*邏輯運算子之使用*/ 4-2 認識運算子 執行結果 程式解說 第7行宣告a、b及c三個整數變數,並設定不同的值。 第12行當連續使用邏輯運算子時,它的計算順序為由左至右,也就是先計算「ab bc」,然後再將結果與「ca」進行OR的運算。 第13行則由括號內先進行,在由左而右依序進行。 4-2 認識運算子 位元運算子 區分為「位元邏輯運算子」與「位元位移運算子」兩種。 位元邏輯運算子 有 (AND)、 | (OR)、 ^ (XOR) ~ (NOT) 位元位移運算子 有 左移運算子() 右移運算子() 4-2 認識運算子 位元邏輯運算子 (AND;且) 執行AND運算時,對應的兩字元都為1時,運算結果才為1,否則為0。 例如:a=12,則a38得到的結果為4,因為12的二進位表示法為1100,38的二進位表示法為0110,兩者執行AND運算後,結果為十進位的4。如下圖所示: 4-2 認識運算子 位元邏輯運算子 |(OR;或) 執行OR運算時,對應的兩字元只要任一字元為1時,運算結果為1,也就是只有兩字元都為0時,才為0。 例如a=12,則a|38得到的結果為46,如下圖所示: 4-2 認識運算子 位元邏輯運算子 ^(XOR) 執行XOR運算時,對應的兩字元只有任一字元為1時,運算結果為1,但是如果同時為1或0時,結果為0。 例如a=12,則a^38得到的結果為42,如下圖所示: 4-2 認識運算子 位元邏輯運算子 ~(NOT) NOT作用是取補數(complement),也就是0與1互換。 例如a=12,二進位表示法為1100,取1的補數後,由於所有位元都會進行0與1互換,因此運算後的結果得到-13: 4-2 認識運算子 範例CH04_09.c /*位元邏輯運算子之使用*/ 4-2 認識運算子 執行結果 程式解說 第6行宣告a=12,b=38。 第8行輸出a與b AND運算後的結果。 第9行輸出a與b OR運算後的結果。 第10行輸出a與b XOR運算後的結果。 第11行輸出a NOT運算後的結果。 4-2 認識運算子 位元位移運算子 (左移) 左移運算子()可將運算元內容向左移動n個位元,左移後超出儲存範圍即捨去,右邊空出的位元則補0。語法格式如下: 例如運算式「122」。數值12的二進位值為1100,向左移動2個位元後成為110000,也就是十進位的48。如下圖所示。 4-2 認識運算子 an 位元位移運算子 (右移) 右移運算子()與左移相反,可將運算元內容右移n個位元,右移後超出儲存範圍即捨去。 在此請注意,這時右邊空出的位元,如果數值是正數則補0,負數則填1。語法格式如下: 例如運算式「122」。數值12的二進位值為1100,向右移動2個位元後成為0011,也就是十進位的3。如下圖所示。 4-2 認識運算子 an 範例CH04_10.c /*「」,「 」之使用*/ 4-2 認識運算子 執行結果 程式解說 6行宣告a=12,二進位表示法 第9行左移2位運算,第10行右移2位運算。 第12行宣告a=-12,二進位表示法 第13行左移2位運算,第14行右移2位運算。 4-2 認識運算子 遞增與遞減運算子 分成「前置型」及「後置型」兩種,屬於一元運算子的一種 ,可分為底下兩種: 遞增運算子++ 遞減運算子-- 4-2 認識運算子 遞增運算子++ 遞增運算子可放在字元的前方或後方,下表說明了遞增運算子(++)兩種格式的運作方式: 4-2 認識運算子 運算式 執行順序說明 int a=0,b=0; b=++a; /*宣告a與b為整數,初始值皆為0*/ a=a+1; /*先將a值加1,此時a=1*/ b=a; /*再將a值指定給b,此時b=1*/ int a=0,b=0; b=a++; /*宣告a與b為整數,初始值皆為0*/ b=a;

文档评论(0)

18273502 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档