1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          C語言的移位運算符

          來源:互聯網轉載 時間:2024-01-29 08:07:58

          C的移位位運算符。移位運算符向左或向右移動位。

          1.左移:<<

          左移運算符(<<)將其左側運算對象每一位的值向左移動其右側運算對象指定的位數。

          左側運算對象移出左末端位的值丟失,用0填充空出的位置.

          下面例子中,每一位都向左移動兩個位置:
          (10001010) << 2 //表達式

          (00101000) << 2 //結果值

          該操作產生了一個新的位值,但是不改變其運算對象。例如,假設stonk為1,那么stonk << 2為4,但是stonk本身不變,仍為1。

          可以使用左移賦值運算符(<<=)來更改變量的值。

          該運算符將變量中的位向左移動其右側運算對象給定值的位數,如下例:

          int stonk = 1;int onkoo;onkoo = stonk << 2;  /* 把4賦值給onkoo */stonk <<= 2;  /* 把stonk的值改為4 */

          2.右移:>>

          右移運算符,將其左側運算對象每一位的值向右移動其右側運算對象指定的位數。

          左側運算對象移出右末端位的值丟失。

          對于無符號類型,用零填充空出的位置;對于有符號類型,其結果取決于機器。

          空出的位置可用0填充,或者用符號位(即最左端的位)的副本填充:

          (10001010)>> 2 //表達式,有符號值

          (00100010) //在某些系統中的結果值

          (10001010)>> 2 //表達式,有符號值

          (11100010) //在另一些系統上的結果值

          下面是無符號值的例子:

          (10001010)>> 2 //表達式,無符號值

          (00100010) //所有系統都得到該結果值

          每個位向右移動兩個位置,空出的位用0填充。

          右移賦值運算符(>>=)其左側的變量向右移動指定數量的位數,如下所示:

          int sweet = 16;       //二進制值為:0001 0000   int ooosw;ooosw = sweet >> 3;   // 右移三位2進制值W為:0000 0010, 十進制ooosw = 2,sweet的值仍然為16sweet >>=3;           //sweet的值為2    ‘>>=’是右移賦值運算符

          3.用法:移位運算符

          移位運算符針對2的冪提供快速有效的乘法和除法:

          number << n num乘以2的n次冪

          number >> n 如果number為非負,則用number除以2的n次冪

          這些移位運算符,類似于在10進制中,移動小數點來乘以10或除以10。

          移位預算符還可以用于較大單元中提取一些位。例如用一個unsigned long類型的值表示顏色值,低階位字節存儲紅色的強度,下一個字節存儲綠色的強度,第3個字節存儲藍色的強度。

          隨后你希望把每種顏色的強度分別存儲在3個不同的類型的變量中,那么可以使用你下面的語句:

          #define BYTE_MASK 0xffunsigned long color = 0x002a162f;unsigned char blue, green, red;red = color & BYTE_MASK;green = (color >> 8) & BYTE_MASK;blue = (color >> 16) & BYTE_MASK;

          以上代碼中使用右移運算符,將8位顏色值移動至低階字節,然后使用掩碼技術把低階字節賦值給指定的變量。


          網絡推廣與網站優化公司(網絡優化與推廣專家)作為數字營銷領域的核心服務提供方,其價值在于通過技術手段與策略規劃幫助企業提升線上曝光度、用戶轉化率及品牌影響力。這...

          在當今數字化時代,公司網站已成為企業展示形象、傳遞信息和開展業務的重要平臺。然而,對于許多公司來說,網站建設的價格是一個關鍵考量因素。本文將圍繞“公司網站建設價...

          在當今的數字化時代,企業網站已成為企業展示形象、吸引客戶和開展業務的重要平臺。然而,對于許多中小企業來說,高昂的網站建設費用可能會成為其發展的瓶頸。幸運的是,隨...

          如何使用易信消息對話?...

          英雄聯盟S7小組賽賽制賽程是什么樣的?目前英雄聯盟S7賽季半決賽的賽程已經完全確定,今年比半決賽更好的一點是LPL兩隊同時進入了四強,而且沒有分到同一組,避免了內戰;時間:10月28日—10月29日地點:上海東方體育中心參賽隊伍:LPL賽區:RNG、we;Lck賽區:SKT、SSG;賽制安排:bo5半決賽采用五局三勝制,先勝三局的隊伍晉級決賽;賽程安排:【SKT vs RNG,10月28日15:3...

          蘋果手機為新的iphone做準備怎么用?新入手的iPhone,提前開啟這四項功能,讓手機能用幾次。1.應用資源庫APP資源庫加入蘋果 s ios 14系統,可以自動整理應用和文件。綜上,桌面看起來更干凈,找應用更方便。但是很多人反映用起來不是很方便。但是現在對于app資源庫來說,加入了全新的分屏模式,查看APP資源庫方便了很多。2.聚焦模式必須開啟專注模式,這樣可以讓你更高效專注的處理一些事情。您...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>