位元NOT運算(~)
文章推薦指數: 80 %
C++ 中位元補數運算(NOT) 的符號以~ 表示,~ 不像& 和|,而是對運算子右邊的單一運算元進行運算,位元補數運算會針對每一個位元進行二進制的補數 ...
86Duino
購買
3D印表機
印匠ENJOY
86DUINOENJOYAUTO
列印線材產品資訊
下載
86servo
多軸控制器
3軸力感測器
86Duino開發板
Roboard
Products
RoBoard
RoBoardModule
CNCEquipments
LCD&Display
ServoMotor
Download
User’sManual
OSInstallation
RoBoIOLibrary
RoBoIOWrapper
RoBoIOApplication
BoardSupportPackage
BIOS
OtherInformation
Code&Video
軟體下載
86Duino整合開發環境
STEM教育軟體
系統工具
學習
新手上路
電子書
自造遊樂園
黑客天地
參考文獻
程式語法參考
函式庫參考
硬體功能說明
位元NOT運算(~)
Postedbyroboard
On11/06/2013
0Comment
C++中位元補數運算(NOT)的符號以~表示,~不像&和|,而是對運算子右邊的單一運算元進行運算,位元補數運算會針對每一個位元進行二進制的補數運算,會將0轉換成1,1轉換成0,請參考以下範例:
0 1 運算元1
———-
1 0 ~運算元1
inta=103;//binary:00000000000000000000000001100111
intb=~a;//binary:11111111111111111111111110011000=-104
你可能會驚訝於103經過補數運算的結果居然會是個負數-104,這是因為int變數中最高的位元會被當作符號位元,當這個位元為1時表示該數為負數,這種編碼方式又被稱作二補數,詳細資料可以參考維基百科的二補數。
有意思的是,任一個整數x,其~x的結果就等於-x-1。
這麼看來,帶有正負符號的整數有時會導致非預期的意外。
語法參考主頁面
本頁由熱血青年LBU譯自英文版。
Thetextofthe86DuinoreferenceisamodificationoftheArduinoreference,andislicensedunderaCreativeCommonsAttribution-ShareAlike3.0License.Codesamplesinthereferencearereleasedintothepublicdomain.
LanguageEnglish繁體中文简体中文日本語
其他操作
註冊 登入
訂閱網站內容RSS資訊提供
訂閱網站留言RSS資訊提供
WordPress台灣繁體中文
EMAIL:[email protected] | TEL:+886222980770 | FAX:+886222991883 ADD:No.15,Wugong5thRd.,NewTaipeiIndustrialPark,NewTaipeiCity248020,Taiwan
86Duino Copyright © 2022DMPElectronicsINC.AllRightsReserved.
延伸文章資訊
- 1位元NOT運算(~)
C++ 中位元補數運算(NOT) 的符號以~ 表示,~ 不像& 和|,而是對運算子右邊的單一運算元進行運算,位元補數運算會針對每一個位元進行二進制的補數 ...
- 2位元運算- 維基百科,自由的百科全書
位元運算[編輯] · 1 位運算符. 1.1 取反(NOT); 1.2 按位或(OR); 1.3 按位異或(XOR); 1.4 按位與(AND) · 2 移位. 2.1 算術移位; 2.2 邏輯...
- 3運算子
位元 ; AND, & ; XOR, ^ ; OR, | ; NOT, ~.
- 4Not 運算子
result = Not expression. Not 運算子的語法具有以下幾個單元: ... 另外,Not 運算子會轉變任何變數的位元值,並且根據下表來設定result 中相對應的位元: ...
- 5Not 運算子
此外,Not 運算子會將任何變數的位值逆轉,並根據下表在result 中設定對應的位。 如果bit in 運算式是, 結果中的位是. 0, 1. 1, 0 ...