Programmieren mit Bitoperatoren

Jedem Programmierer sollten wohl logische und arithmetische Operationen hinlänglich bekannt sein – muss man sie doch nahezu in jedem kleinsten Script heutzutage verwenden. Ein wenig unbekannt, gar mysteriös erscheinen dagegen so manche Operatoren abseits von Addition, Subtraktion, Multiplikation, Division sowie Konjunktion (und), Disjunktion (oder), Antivalenz (Exklusiv-oder) und Negation (nicht). Gemeint sind die bitweisen Operationen, welche vor allem in der Maschinen-nahen Programmierung mittels Assembler gang und gäbe sind. Benannt sind diese in Assembler erstaunlicherweise genauso, wie die logischen Operatoren häufig auch in höheren Programmiersprachen benannt wurden, nämlich AND, OR, NOT und XOR (viele Sprachen akzeptieren für die logischen Verknüpfungen auch mehrere Varianten – z.B. in PHP ist sowohl && wie auch AND), was letztendlich mit Sicherheit nicht gerade zur Entwirrung der Thematik beiträgt. Der folgende Artikel soll es aber einmal versuchen, Licht ins Dunkel zu bringen sowie auch den einen oder anderen Vorteil darzulegen. Voraussetzung für das Verständnis der folgenden Inhalte sind jedoch Grundkenntnisse der Aussagenlogik.

Was machen denn nun die Bit-Operatoren anders?
Ganz einfach: Die üblichen logischen Operatoren sind lediglich auf dem Wertebereich der boolschen Werte definiert und bilden auch nur auf selbige ab. Die bitweisen Operatoren dagegen stellen Funktionen, die vom Integer-Wertebereich (32 Bit) auf selbigen abbilden. Hierbei betrachtet man lediglich die Binärdarstellungen der Zahlen und wendet die Operationen auf jedes einzelne Zeichen (Bit) an. Ein Beispiel: 42 & 12 = 8, denn:

  00101010 (42)
& 00001100 (12)
---------------
  00001000 (8)

Weitere bitweise Operatoren sind häufig neben & (und) auch | (oder), ~ (nicht) und ^ (xor).

Rechnen wir damit mal ein paar Beispiele:
Oder: 42 | 12 = 46

  00101010 (42)
| 00001100 (12)
---------------
  00101110 (46)

Exklusives Oder (Entweder… oder): 42 ^ 12 = 38

  00101010 (42)
^ 00001100 (12)
---------------
  00100110 (38)

Sind das schon alle?
Nein, es gibt tatsächlich noch weitere, die über die Semantik der logischen Operationen hinausgehen. So gibt es ebenfalls noch die sogenannten Bitschiebebefehle. Hierbei werden lediglich die einzelnen Ziffern in der Binärdarstellung um eine angegebene Anzahl von Stellen nach rechts (>>) bzw. links (<<) verschoben. Dies entspricht letztendlich arithmetischen Operationen, genauer genommen der Multiplikation bzw. Division der jeweiligen Zahl mit einer Potenz von 2. Ein weiteres Beispiel: 43 >> 2 = 10, denn:

00101011 >> 2
-------------
00001010

Und was macht man damit?
Die Anwendung dieser Operatoren lässt sich zumeist auf die Arbeit mit Bitmasken einsetzen. Diese finden vor allem bei der Arbeit mit Dateien und Verzeichnissen in UNIX-Betriebssystemen ihren Einsatz – genauer gesagt bei der Definition der Zugriffsrechte. Hier repräsentiert eine zumeist 9 bit-Zahl Lese-, Schreib- und Ausführrechte des Nutzers, der Gruppe und der restlichen Welt. Mithilfe bitweiser Operatoren lassen sich diese wunderbar verändern, beispielsweise um zusätzlich der Gruppe zu erlauben, die Datei zu lesen, könnte so aussehen:
alter Wert | 000100000 = neuer Wert.
Auch in anderen Bereichen werden solche Bitmasken manchmal verwendet. So besitzen manche Funktionen, die zumeist schon standardmäßig in den Programmiersprachen enthalten sind, einen (optionalen) Parameter “Flags”, der ebenfalls eine Bitmaske erwartet und diverse zusätzliche Optionen für die Ausführung der Funktion definiert.

Des Weiteren kann man herausfinden, an welcher Stelle in der Binärdarstellung einer Zahl sich eine 0 oder eine 1 befindet.
So lässt sich beispielsweise wie folgt testen, ob an der zweiten Stelle von rechts einer Integerzahl i die Ziffer 1 steht.

if(i & 2 != 0)
{
     print("juhu!");
}

Damit wären wir auch schon wieder am Ende dieses kleinen Einblicks in die kleine Welt der Bits und bitweisen Operatoren. Wir hoffen, dass dieser Eintrag dem einen oder anderen helfen konnte. Sollten dennoch weiterhin Fragen offen bleiben, können diese gerne in den Kommentaren gestellt werden.

28 Kommentare
  1. 7STAR娛樂城提供百家樂、老虎機、今彩539、天天樂、運彩賽事、德州撲克、麻將技巧、大樂透、電子競技、賓果、四星彩、威力彩,娛樂城推薦評價,最優惠的娛樂城體驗金。

    Antworten
    9. April 2024, 12:32
  2. 七星娛樂城提供百家樂破解、百家樂賺錢、百家樂預測、百家樂算牌、技巧、規則、歐博、沙龍、dg、wm、真人線上百家樂推薦遊戲試玩,教學打法的介紹,補牌程式贏錢。

    Antworten
    9. April 2024, 12:32
  3. 7星娛樂城提供老虎機技巧、老虎機訣竅、老虎機攻略、老虎機介紹、老虎機破解、雷神之鎚、魔龍傳奇、拉霸機遊戲、金猴爺老虎機、捕魚機,cq9試玩尋找出好贏的熱門遊戲。

    Antworten
    9. April 2024, 12:32
  4. 銀河S娛樂城提供百家樂、老虎機、今彩539抓牌攻略、天天樂、運彩賽事、德州撲克、麻將技巧、大樂透、電子競技、賓果、四星彩、威力彩,娛樂城推薦評價,最優惠的娛樂城體驗金

    Antworten
    1. Juli 2024, 16:55
  5. 谷哥六合彩提供了超多彩球遊戲的知識及攻略,像是今彩539、威力彩、美國天天樂、香港六合彩等,想的到的通通都有,還不趕快來加入!

    Antworten
    1. Juli 2024, 17:02
  6. SC太陽城娛樂城秉持匠人之心不斷研發創新推出更多款老虎機款式,包刮雷神之槌、魔龍傳奇、戰神賽特,並提供老虎機技巧、老虎機訣竅、老虎機攻略、老虎機介紹、老虎機破解等文章。

    Antworten
    2. Juli 2024, 16:09
  7. 龍富娛樂城是一個提供豐富線上娛樂選擇的平臺,涵蓋真人娛樂、電子遊戲及體育博彩等。以其高品質的遊戲體驗和可靠的客戶服務受到玩家的青睞,龍富娛樂城致力於為用戶提供安全、愉快的娛樂環境,是享受線上遊戲的理想選擇。

    Antworten
    龍富娛樂城
    13. September 2024, 13:09
  8. 百家樂看法因人而異,一些玩家認為遊戲主要依賴運氣,投注莊家或閒家通常是穩妥的選擇;另一些則關注策略和統計方法,試圖提高勝率。無論哪種看法,保持理性投注和合理的資金管理都是遊戲成功的關鍵。了解不同觀點有助於制定適合自己的遊戲策略。

    Antworten
    百家樂看法
    13. September 2024, 13:10
  9. 五龍爭霸老虎機是一款充滿中國風格的老虎機遊戲,玩家將體驗到五條神龍爭奪獎金的刺激。遊戲擁有豐富的免費旋轉和高額獎勳機制,每一次旋轉都可能帶來驚喜。其精美的圖形和動感的音效增添了遊戲的娛樂性和挑戰性。

    Antworten
    五龍爭霸老虎機
    13. September 2024, 16:57
  10. 龍富娛樂城是一個受到廣泛好評的線上娛樂平台,提供多樣化的遊戲選擇,如老虎機、桌面遊戲和真人賭場。平台以其高品質的服務和豐富的獎勳活動吸引了大量玩家,讓他們享受刺激的遊戲體驗並有機會贏取豐厚的獎金。

    Antworten
    龍富娛樂城
    13. September 2024, 16:58
  11. 錢豪贏是一個備受青睞的線上娛樂平台,專注於提供各種賭博遊戲,包括百家樂、輪盤和電子遊戲。玩家可以享受高品質的遊戲體驗,並參與多樣化的優惠活動以獲得豐厚獎勵。錢豪贏注重玩家的安全和隱私,採用先進的加密技術保障交易安全,讓每位玩家都能在安心的環境中盡情享受娛樂的樂趣。

    Antworten
    錢豪贏
    20. September 2024, 13:48
  12. 星城百家樂是一個專業的線上遊戲平台,專注於提供高品質的百家樂遊戲體驗。玩家可以享受多樣的遊戲選擇,並與專業的荷官互動,感受真實賭場的氛圍。星城百家樂注重玩家的安全與隱私,並提供多種優惠活動,讓玩家在遊玩過程中獲得更多獎勵。這裡是喜愛百家樂玩家的理想選擇,讓每一局遊戲都充滿刺激與樂趣。

    Antworten
    星城百家樂
    20. September 2024, 13:49
  13. 大聖娛樂城是一個提供多樣遊戲體驗的線上平台,致力於為玩家帶來刺激的賭博樂趣。平台擁有豐富的電子遊戲、真人荷官和體育博彩,滿足各種玩家的需求。大聖娛樂城注重玩家的安全,採用先進的加密技術保護個人資訊,並提供便捷的存取款服務。其友好的客戶支持和吸引人的獎勵計劃,使遊戲體驗更加愉快,是尋求娛樂的理想選擇。

    Antworten
    大聖娛樂城
    20. September 2024, 15:49
  14. 錢豪贏是一個專注於線上賭博的娛樂平台,以其多元化的遊戲選擇和高額獎勵而聞名。玩家可以在這裡找到各類電子遊戲、即時賭場和體育博彩,滿足不同喜好的需求。錢豪贏提供安全的遊戲環境,採用先進的加密技術保護用戶資料,並且存取款流程快捷便利。平台的專業客服團隊隨時為玩家提供支援,讓每一位玩家都能享受最佳的遊戲體驗。

    Antworten
    錢豪贏
    20. September 2024, 15:49
  15. SevenStar娛樂城https://xuiti.com/

    娛樂城推薦玩7STAR娛樂城是有原因的,進入7STAR這間最新台灣線上博弈平台的官網後就可以看到多種CP值高又佛心的優惠活動可以參加,時不時還有體驗金可以領取。

    百家樂攻略是每位想把百家樂破解的玩家都會去看的,而想在線上百家樂賺錢就得研究百家樂算牌之類的線上百家樂技巧,建議剛入門的新手可以先透過DG真人遊戲試玩版去練習。

    老虎機贏錢秘訣對於破解雷神之錘、戰神賽特、魔龍傳奇等當今的熱門機台是很有幫助的,想要在老虎機中獲利的話可以先去研究一些攻略,然後再透過線上試玩把技巧給融會貫通。

    7STAR娛樂城為目前台灣最優質的線上博弈平台,連續多年榮獲了最佳現金版的殊榮,同時也是2024年玩家們最推薦的娛樂城品牌,現在就馬上註冊享受刺激的遊戲過程吧!

    Antworten
    SevenStar娛樂城
    21. September 2024, 10:31
  16. SevenStar娛樂城https://casino-star.tw/

    娛樂城推薦玩7STAR娛樂城是有原因的,進入7STAR這間最新台灣線上博弈平台的官網後就可以看到多種CP值高又佛心的優惠活動可以參加,時不時還有體驗金可以領取。

    百家樂攻略是每位想把百家樂破解的玩家都會去看的,而想在線上百家樂賺錢就得研究百家樂算牌之類的線上百家樂技巧,建議剛入門的新手可以先透過DG真人遊戲試玩版去練習。

    老虎機贏錢秘訣對於破解雷神之錘、戰神賽特、魔龍傳奇等當今的熱門機台是很有幫助的,想要在老虎機中獲利的話可以先去研究一些攻略,然後再透過線上試玩把技巧給融會貫通。

    7STAR娛樂城為目前台灣最優質的線上博弈平台,連續多年榮獲了最佳現金版的殊榮,同時也是2024年玩家們最推薦的娛樂城品牌,現在就馬上註冊享受刺激的遊戲過程吧!

    Antworten
    SevenStar娛樂城
    21. September 2024, 10:32
  17. 娛樂城代理是一個為玩家提供便捷服務的角色,負責引導新玩家註冊、充值及遊戲體驗。透過娛樂城代理,玩家可以享受到專屬優惠和獎勵,提升遊戲的樂趣與回報。代理通常擁有豐富的遊戲知識,能夠為新手提供實用的建議和支持,幫助他們更快融入娛樂城的環境。這樣的合作關係不僅有助於玩家,也促進了娛樂城的發展。

    Antworten
    娛樂城代理
    25. September 2024, 13:19
  18. 娛樂城代理是一個為玩家提供便捷服務的角色,負責引導新玩家註冊、充值及遊戲體驗。透過娛樂城代理,玩家可以享受到專屬優惠和獎勵,提升遊戲的樂趣與回報。代理通常擁有豐富的遊戲知識,能夠為新手提供實用的建議和支持,幫助他們更快融入娛樂城的環境。這樣的合作關係不僅有助於玩家,也促進了娛樂城的發展。

    Antworten
    娛樂城代理
    25. September 2024, 13:19
  19. 卡利集團百家樂是一個專業的在線賭場平台,提供多樣化的百家樂遊戲選擇,讓玩家享受刺激的賭博體驗。平台擁有友好的用戶介面和專業的荷官,讓每位玩家都能輕鬆上手。安全可靠的支付系統和豐厚的獎勵計劃,讓玩家在挑戰自我的同時,有機會贏取可觀的獎金,體驗真正的娛樂樂趣。

    Antworten
    卡利集團百家樂
    25. September 2024, 16:36
  20. 魔龍傳奇密技是一系列能夠幫助玩家提升遊戲勝率的秘密技巧。這些技巧包括角色的技能配置、戰鬥策略和資源管理,能幫助玩家更有效地完成任務和打敗敵人。掌握這些密技後,玩家能在遊戲中獲得更多獎勵和資源,提升角色能力,開創更強大的冒險之路,享受更豐富的遊戲體驗!

    Antworten
    魔龍傳奇密技
    25. September 2024, 16:37
  21. 娛樂城試玩“讓玩家有機會免費體驗各類遊戲,無需風險即可熟悉規則和玩法。透過試玩,您可以探索不同的娛樂選擇,如真人娛樂、電子遊戲和體育博彩,找到最適合自己的遊戲風格。這樣的體驗不僅能提升您的遊戲技巧,還能增加對平台的信任。立即參加娛樂城試玩,開啟您的娛樂冒險之旅!

    Antworten
    娛樂城試玩
    28. September 2024, 13:17
  22. 娛樂城試玩“讓玩家有機會免費體驗各類遊戲,無需風險即可熟悉規則和玩法。透過試玩,您可以探索不同的娛樂選擇,如真人娛樂、電子遊戲和體育博彩,找到最適合自己的遊戲風格。這樣的體驗不僅能提升您的遊戲技巧,還能增加對平台的信任。立即參加娛樂城試玩,開啟您的娛樂冒險之旅!

    Antworten
    娛樂城試玩
    28. September 2024, 13:18
  23. 卡利歐博是一個新興的線上賭博平台,提供多樣化的遊戲選擇,如百家樂、輪盤和老虎機等。平台以其用戶友好的介面和安全的交易系統受到廣大玩家的喜愛。玩家可以隨時隨地進行遊戲,並享受豐厚的獎勵和優惠活動。透過各種策略和技巧,玩家能夠提高獲勝機會,享受無限的娛樂樂趣。

    Antworten
    卡利歐博
    28. September 2024, 16:26
  24. 電子遊樂是現代娛樂的一個重要組成部分,涵蓋了各種互動遊戲和遊樂設施。從電子遊戲機到虛擬實境體驗,玩家可以在各種環境中享受刺激和樂趣。這些遊樂設施通常配有迷人的視覺效果和音效,吸引著不同年齡層的參與者。隨著技術的進步,電子遊樂的形式和內容不斷創新,讓人期待每次的遊玩體驗。

    Antworten
    電子遊樂
    28. September 2024, 16:27
  25. 台灣制霸娛樂城是一個提供多樣化娛樂體驗的線上平台,玩家可以在這裡享受多種電子遊戲、桌上遊戲以及彩票等多樣選擇。不論是刺激的博弈遊戲,還是娛樂性的社交互動,台灣制霸娛樂城都為用戶提供了豐富的選項。透過安全可靠的支付方式,玩家可以安心進行交易,並且享受高品質的遊戲體驗,隨時隨地體驗極致娛樂樂趣。

    Antworten
    4. Oktober 2024, 8:12
  26. 台灣制霸娛樂城是一個提供多樣化娛樂體驗的線上平台,玩家可以在這裡享受多種電子遊戲、桌上遊戲以及彩票等多樣選擇。不論是刺激的博弈遊戲,還是娛樂性的社交互動,台灣制霸娛樂城都為用戶提供了豐富的選項。透過安全可靠的支付方式,玩家可以安心進行交易,並且享受高品質的遊戲體驗,隨時隨地體驗極致娛樂樂趣。

    Antworten
    4. Oktober 2024, 8:12
  27. 卡利娛樂城代理是一個專注於線上博弈平台的合作項目,代理通過推廣娛樂城服務來賺取佣金。作為卡利娛樂城代理,您可以享受到豐厚的獎金制度,並透過多元化的遊戲種類吸引玩家。代理商可隨時跟蹤業績並取得專業支援,讓推廣更高效。成為卡利娛樂城代理,輕鬆開啟自己的線上事業,並享受穩定的收入來源。

    Antworten
    4. Oktober 2024, 8:15
  28. 電子遊戲歷史始於20世紀中期,首款電子遊戲《Pong》於1972年推出,掀起全球熱潮。80年代家用遊戲機如任天堂紅白機普及,推動遊戲文化發展。90年代後,3D圖形和網路遊戲興起,使遊戲更具沉浸感。如今,電子遊戲已成全球娛樂產業的重要支柱。

    Antworten
    4. Oktober 2024, 8:16

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*