位运算符详解

位运算符比一般的算术运算符速度要快,而且可以实现一些算术运算符不能实现的功能。如果要开发高效率程序,位运算符是必不可少的。位运算符用来对二进制位进行操作,包括:按位与()、按位或(|)、按位异或(^)、按位取反(~)、按位左移()、按位右移()。下面就给大家介绍位运算符的详细用法。

指定 A = 60(0011 1100); B = 13 (0000 1101)
按位与() 对两个数进行操作,然后返回一个新的数,这个数的每个位都需要两个输入数的同一位都为1时才为1,如下图: (A B) 结果为 12, 二进制为 0000 1100

按位或(|) 比较两个数,然后返回一个新的数,这个数的每一位设置1的条件是两个输入数的同一位都不为0(即任意一个为1,或都为1),如下图: (A | B) 结果为 61, 二进制为 0011 1101

按位异或(^) 比较两个数,然后返回一个数,这个数的每个位设为1的条件是两个输入数的同一位不同,如果相同就设为0,如下图: (A ^ B) 结果为 49, 二进制为 0011 0001

按位取反(~) 对一个操作数的每一位都取反,如下图: (~A ) 结果为 -61, 二进制为 1100 0011
按位左移() 将操作数的所有位向左移动指定的位数。 下图展示了11111111 1(11111111 左移一位)的结果。蓝色数字表示被移动位,灰色表示被丢弃位,空位用橙色的0填充。 (A 2)结果为 240, 二进制为 1111 0000

按位右移() 将操作数的所有位向又移动指定的位数。 下图展示了11111111 1(11111111 右移一位)的结果。蓝色数字表示被移动位,灰色表示被丢弃位,空位用橙色的0填充。 A 2 结果为 15, 二进制为 0000 1111

好了,关于位运算符就给大家介绍到这里,有开发环境的程序猿朋友可以多多练习。

  • 浣嶈繍绠楃璇﹁В
    绛旓細浣嶈繍绠楃姣斾竴鑸殑绠楁湳杩愮畻绗﹂熷害瑕佸揩锛岃屼笖鍙互瀹炵幇涓浜涚畻鏈繍绠楃涓嶈兘瀹炵幇鐨勫姛鑳銆傚鏋滆寮鍙戦珮鏁堢巼绋嬪簭锛屼綅杩愮畻绗︽槸蹇呬笉鍙皯鐨勩備綅杩愮畻绗︾敤鏉ュ浜岃繘鍒朵綅杩涜鎿嶄綔锛屽寘鎷細鎸変綅涓庯紙锛夈佹寜浣嶆垨锛坾锛夈佹寜浣嶅紓鎴栵紙^锛夈佹寜浣嶅彇鍙嶏紙~锛夈佹寜浣嶅乏绉伙紙锛夈佹寜浣嶅彸绉伙紙锛夈備笅闈㈠氨缁欏ぇ瀹朵粙缁嶄綅杩愮畻绗︾殑璇︾粏...
  • 姹:JAVA涓父鐢浣嶈繍绠楃鍙婂叾鐢ㄦ硶璇﹁В
    绛旓細浣嶈繍绠楁槸浠ヤ簩杩涘埗浣嶄负鍗曚綅杩涜鐨勮繍绠楋紝鍏舵搷浣滄暟鍜岃繍绠楃粨鏋滈兘鏄暣鍨嬪銆浣嶈繍绠楃鍏辨湁7涓锛屽垎鍒槸锛氫綅涓庯紙&锛夈佷綅鎴栵紙|锛夈佷綅闈烇紙~锛夈佷綅寮傛垨锛坁锛夈佸彸绉伙紙>>锛夈佸乏绉伙紙<<锛夈0濉厖鐨勫彸绉伙紙>>>锛夈備綅杩愮畻鐨勪綅涓庯紙&锛夈佷綅鎴栵紙|锛夈佷綅闈烇紙~锛夈佷綅寮傛垨锛坁锛変笌閫昏緫杩愮畻鐨勭浉搴旀搷浣滅殑鐪熷艰〃...
  • c璇█浣嶈繍绠闂?
    绛旓細int i=2;printf("%d",i>>64);姝ゆ椂i鏄釜鍙橀噺锛岀紪璇戝櫒娌℃硶鍦ㄧ紪璇戞椂绠楀嚭缁撴灉锛岃繖鏃跺氨闇瑕侀氳繃SARL绠楁湳鍙崇Щ鎸囦护杩涜锛岃繖閲岃冭檻鍒版孩鍑鸿繖涓寚浠ゆ湁涓涓皟鏁存満鍒讹紝瀹冧細鏍规嵁宸︽搷浣滄暟i绫诲瀷鏉ヨ皟鏁村彸鎿嶄綔鏁帮紝姣斿杩欓噷i鏄4瀛楄妭32浣嶏紝涔熷氨鏄畠鏈澶氬彸绉32浣嶏紝濡傛灉鍙虫搷浣滄暟澶т簬32瀹冧細杩涜64%32=0锛屾墍浠>>64...
  • java浣嶈繍绠楃璇﹁В
    绛旓細1. 鎸変綅涓庤繍绠 鎸変綅涓庤繍绠楃"&"鏄弻鐩繍绠楃銆傚叾鍔熻兘鏄弬涓庤繍绠楃殑涓ゆ暟鍚勫搴旂殑浜岃繘浣嶇浉涓銆傚彧鏈夊搴旂殑涓や釜浜岃繘浣嶅潎涓1鏃讹紝缁撴灉浣嶆墠涓1 锛屽惁鍒欎负0銆傚弬涓庤繍绠楃殑鏁颁互琛ョ爜鏂瑰紡鍑虹幇銆備緥濡傦細9&5鍙啓绠楀紡濡備笅锛 00001001 (9鐨勪簩杩涘埗琛ョ爜)&00000101 (5鐨勪簩杩涘埗琛ョ爜) 00000001 (1鐨勪簩杩涘埗琛ョ爜)鍙9&5...
  • C璇█涓紪绋嬫椂閭d簺%d &涔嬬被鐨勪粈涔堟椂鍊欑敤鍟?姹璇﹁В!
    绛旓細d鐢ㄤ簬杈撳叆杈撳嚭鏁村瀷鏁版椂浣跨敤鍒, 渚嬪 printf("%d", a);&鐢ㄤ簬鍙栧彉閲忕殑鍦板潃鎴栨寜浣嶄笌杩愮畻, 渚嬪 scanf("%d", &a);a=b & c;
  • php涓 & || ^ 鐨勭鍙锋剰鎬濄
    绛旓細&锛氳繖涓鍙峰彨鈥滀笌鈥濓紝琛ㄧず宸﹀彸涓よ竟鐨勬搷浣滄暟閮戒负鈥滅湡鈥濇椂鎵嶄负鈥滅湡鈥濓紝鍙h瘈鏄湡鐪熶负鐪燂紝鐪熷亣涓哄亣锛屽亣鐪熶负鍋囷紝鍋囧亣涓哄亣锛泑|锛氳繖涓鍙峰彨鈥滄垨鈥濓紝琛ㄧず宸﹀彸涓よ竟鐨勬搷浣滄暟鍙鏈変竴涓负鈥滅湡鈥濇椂灏变负鈥滅湡鈥濓紝鍙h瘈鏄湡鐪熶负鐪燂紝鐪熷亣涓虹湡锛屽亣鐪熶负鐪燂紝鍋囧亣涓哄亣锛沕锛氳繖涓鍙峰彨鈥滈潪鈥濓紝琛ㄧず灏嗗彸杈圭殑鎿嶄綔...
  • JavaScript杩愮畻绗﹁瑙
    绛旓細1銆乯avascript鍏锋湁涓嬪垪绉嶇被鐨勮繍绠楃:绠楁湳杩愮畻绗;绛夊悓杩愮畻绗︿笌鍏ㄥ悓杩愮畻绗;姣旇緝杩愮畻绗;2銆佺洰鐨勫垎绫:瀛楃涓茶繍绠楃;閫昏緫杩愮畻绗;閫浣嶈繍绠楃;璧嬪艰繍绠楃;3銆佺壒娈婅繍绠楃:鏉′欢杩愮畻绗;typeof杩愮畻绗;鍒涘缓瀵硅薄杩愮畻绗ew;delete杩愮畻绗;void杩愮畻绗﹀彿;閫楀彿杩愮畻绗;绠楁湳杩愮畻绗:+ 銆 - 銆* 銆 / 銆 % 銆 -(涓鍏冨彇鍙) 銆 ...
  • 璇锋暀C++涓Щ浣杩愮畻绗鐨勪竴閬撻棶棰,璇﹁Вplease!
    绛旓細4567鎹㈢畻鎴 2杩涘埗 涓猴細0001 0001 1101 0111 s<<3 鍚戝乏绉3浣嶏紝浣庝綅鐢0琛ラ綈锛岀粨鏋滀负锛1000 1110 1011 1000 鍐嶅皢瀹冩崲绠楁垚 鍗佽繘鍒 渚挎槸-29000 鍦ㄨ绠楁満涓紝鏁版槸浠 浜岃繘鍒惰ˉ鐮 褰㈠紡瀛樻斁鐨勶紝姝f暟 鍜岄浂鐨勮ˉ鐮佷负 鍘熺爜 鏈韩锛岃礋鏁扮殑琛ョ爜鏄鍙蜂綅涓嶅彉锛屽叾浣欐瘡浣 鍙栧弽 鍔1 棰潂~...
  • c++涓殑浣嶈繍绠璁$畻闂
    绛旓細鐒跺悗鎸変綅鍙栧弽锛屽緱锛1111111111111111111111111111110锛屾渶鍚庡啀鍔犱釜1锛屽氨鏄0xFFFFFFFF锛宎|b-c锛岃繖瑕佽冭檻鍒杩愮畻绗鐨勪紭鍏堢骇闂锛屼箻闄ゆ眰浣欑殑浼樺厛绾уぇ浜庡姞娉曞噺娉曪紝鍔犳硶鍑忔硶澶т簬涓庤繍绠楋紝涓庤繍绠楀ぇ浜庡紓鎴栬繍绠楋紝寮傛垨杩愮畻澶т簬鎴栬繍绠楋紝鐜板湪鍐嶆潵鐪嬩綘鐨勯棶棰橈紝a|b-c锛氬厛鍋氬噺娉昩-c锛屽緱-1锛岀劧鍚庡啀涓1鍋氭垨杩愮畻锛屽緱鍒-1...
  • java涓,2>>1 鍜2<<1涓殑鈥<<鈥欏拰鈥>>鈥欐槸浠涔杩愮畻鍟?
    绛旓細2鍙崇Щ涓浣嶇浉褰撲簬涔樹互2=>2/2=1 2<<1:宸︾Щ涓浣嶏紝2宸︾Щ绉讳竴浣嶇浉褰撲簬闄や互2=>2*2=4 C璇█涓乏绉<<琛ㄧず涔樹互2锛屽彸绉>>琛ㄧず闄や互2锛岃繖鏄敱璁$畻鏈哄伐浣滃師鐞嗗鑷 绉讳綅鎿嶄綔绗鐨勪袱涓搷浣滄暟蹇呴』鏄暣鍨嬬殑銆傛暣涓Щ浣嶈〃杈惧紡鐨勫肩殑绫诲瀷涔熸槸鏁村瀷鐨勶紝鑰屼笖锛屽乏绉讳綅鎿嶄綔绗︿笌鍙崇Щ浣嶆搷浣滅鐨杩愮畻骞朵笉瀵圭О ...
  • 扩展阅读:python位运算符详解 ... 位左移运算符 python ... 位运算详解 ... java位运算符详解 ... c语言位运算符详解 ... c++位运算符 ... 位运算符有哪些 ... c语言位运算符取反 ... 位运算符的用法 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网