0001 1001
另如 ASCII 編碼中的字母 f 為
0110 0110
所謂的位元運算,就是逐位元進行比較,例如以上兩項編碼做邏輯或的位元運算
0001 1001 or 0110 0110
結果會是
0111 1111
Objective-C 語言的位元運算子如下表
運算子 | 功能 | 範例 |
---|---|---|
& | 且 | a & b |
| | 或 | a | b |
^ | 互斥或 | a ^ b |
<< | 向左位移 | a << b |
>> | 向右位移 | a >> b |
~ | 取 1 的補數 | ~a |
基本資料型態 (basic data type) 中的整數可以做位元運算,舉例如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #import <Foundation/Foundation.h> int main ( int argc, const char * argv[]) { NSAutoreleasePool * pool = [[ NSAutoreleasePool alloc ] init ]; int a = 0 x 1 0 1 ; int b = 0 x 1 1 ; NSLog( @"%x" , a & b); NSLog( @"%x" , a | b); NSLog( @"%x" , a ^ b); a = 0 x 1 0 0 ; b = 0 x 4 ; NSLog( @"%x" , a << b); NSLog( @"%x" , a >> b); a = 0 x 0 ; b = 0 x 1 0 0 ; NSLog( @"%x" , ~a); NSLog( @"%x" , ~b); [pool drain ]; return 0 ; } /* 《程式語言教學誌》的範例程式 檔名:bitwise.m 功能:Objective-c 程式範例 作者:張凱慶 時間:西元 2013 年 4 月 */ |
編譯執行,結果如下

中英文術語對照 | |
---|---|
運算元 | operand |
運算子 | operator |
基本資料型態 | basic data type |
您可以繼續參考
運算式
相關目錄
Objective-C 快速導覽
Objective-C 教材
首頁
參考資料
Programming with Objective-C: About Objective-C
Programming with Objective-C: Working with Objects
沒有留言:
張貼留言