12 《C 程式設計》位運算

2021-10-03 11:39:07 字數 1229 閱讀 2841

運算子

含義運算子含義&

按位與~取反|

按位或《左移^

按位異或

>>

右移參加運算的兩個資料,按二進位制位進行「與」運算。

參加運算的兩個資料,按二進位制進行"與"運算。

如果兩個相應的二進位制位都為1,則該位的結果值為1;否則為0;

9&5可寫算式如下:

00001001

(9的二進位制補碼)

&00000101

(5的二進位制補碼)

00000001

(1的二進位制補碼

用途兩個相應的二進位制位中只要有乙個為1,則該位的值為1。

9|5可寫算式如下

00001001

|00000101

00001101

(十進位制為13

) 可見9|5

=13

異或運算子「^」也稱為xor運算子。

若參加運算的兩個二進位制位同號則為結果0(假),異號則為結果1(真)

00001001

^00000101

00001100

(十進位制為12

) 可見9^5

=12

功能:

「~」是乙個單元運算子,用來對乙個二進位制數按位取反,即將0變為1,將1變為0。

例如~9的運算為:

~(0000 0000 0000 1001)

結果為:

1111 1111 1111 0110

移運算子「<<」是雙目運算子。其功能把「<< 」左邊的運算數的各二進位全部左移若干位,由「<<」右邊的數指定移動的位數,高位丟棄,低位補0。

例如:a=<<2將a的二進位制數左移2位,右邊補0,a = 15。

a的二進位制數為 0000

1111

左移兩位後為0011

1100,十進位制數的60

左移n位相當於該數乘以2的n次方,但此結論只適用於該數左移時被溢位捨棄的高位中不包含1的情況。

右移運算子「>>」是雙目運算子。其功能是把「>> 」左邊的運算數的各二進位全部右移若干位,「>>」右邊的數指定移動的位數。

例如:設a=15,a>>2表示把000001111右移為00000011(十進位制3)。

右移n位相當於除以2的n次方。

右移時,需要注意符號位問題,

12c簡單查詢

檢視例項名稱 select instance name from v instance 檢視所在資料庫 show con name 檢視檢視 select name,con id from v services 檢視可插拔資料庫 select con id,name,open mode from v...

12C的審計模式

1.mixed auditing policy 混合審計模式支援新的審計引擎和老的審計引擎一起工作 資料庫公升級後,已有的審計設定不會受到影響。但是官方建議遷移到統一審計模式。資料庫建立後,預設是使用混合模式。在決定使用unified auditing模式之前,可以使用混合模式建立審計策略然後開啟該...

小白月賽12 C

拓展線性篩法,將所有素數的n次冪算出來,利用素數的次冪得到合數的次冪。include include includeusing namespace std typedef long long ll const int mod 1e9 7 ll quick ll a,ll b return res m...