詳解原碼、反碼與補碼存儲與大小
詳解原碼、反碼與補碼存儲與大小
原碼:
如果機器字長為N個bit,那么一個數(shù)的原碼就是N位二進制數(shù),最高位
是符號位,1代表負數(shù),0代表正數(shù)。
反碼:
正數(shù)的反碼就是原碼,負數(shù)的反碼就是符號位不變,其他取反。
補碼:
正數(shù)的補碼與其原碼相同;負數(shù)的補碼是在其反碼的末位加1。
(計算機中的數(shù)都是以補碼形式存儲的)
補碼的形式是為了進行正負數(shù)二進制的加減操作
char為1個字節(jié),8個bit位,看看內(nèi)存中是怎么存儲的
十六進制 二進制(補碼) 反碼 原碼 實際值 char a = 127; //7f 0111 1111 127 char b = 128; //80 1000 0000 0111 1111 1000 0000 -128 char c = -128; //80 1000 0000 0111 1111 1000 0000 -128 char d = -1; //ff 1111 1111 1111 1110 1000 0001 -1
-128可能大家會有疑問,1000 0000是負數(shù),按補碼反碼原碼的方式往回推減一為0111 1111,取反1000 0000為128,因為是負數(shù)所以就是-128.
所以signed char的最大值為127,最小值為-128.
unsigned是無符號的意思,就是沒有符號位。
unsigned char e = 256; //00 0000 0000 0 unsigned char f = -1; //ff 1111 1111 255 unsigned char g = 255; //ff 1111 1111 255
因為沒有符號位,所以原反補碼都一樣,為什么-1的值為255呢,-1的原碼是0000 0001(沒符號位),反碼1111 1110,補碼
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
欄 目:C語言
下一篇:利用C語言編輯畫圖程序的實現(xiàn)方法(推薦)
本文標題:詳解原碼、反碼與補碼存儲與大小
本文地址:http://mengdiqiu.com.cn/a1/Cyuyan/1436.html
您可能感興趣的文章
- 01-10求子數(shù)組最大和的解決方法詳解
- 01-10深入二叉樹兩個結(jié)點的最低共同父結(jié)點的詳解
- 01-10數(shù)據(jù)結(jié)構(gòu)課程設(shè)計- 解析最少換車次數(shù)的問題詳解
- 01-10數(shù)據(jù)結(jié)構(gòu)課程設(shè)計-用棧實現(xiàn)表達式求值的方法詳解
- 01-10HDOJ 1443 約瑟夫環(huán)的最新應用分析詳解
- 01-10C語言 解決不用+、-、×、÷數(shù)字運算符做加法
- 01-10使用C++實現(xiàn)全排列算法的方法詳解
- 01-10如何查看進程實際的內(nèi)存占用情況詳解
- 01-10深入Main函數(shù)中的參數(shù)argc,argv的使用詳解
- 01-10APUE筆記之:進程環(huán)境詳解


閱讀排行
本欄相關(guān)
- 04-02c語言函數(shù)調(diào)用后清空內(nèi)存 c語言調(diào)用
- 04-02func函數(shù)+在C語言 func函數(shù)在c語言中
- 04-02c語言的正則匹配函數(shù) c語言正則表達
- 04-02c語言用函數(shù)寫分段 用c語言表示分段
- 04-02c語言中對數(shù)函數(shù)的表達式 c語言中對
- 04-02c語言編寫函數(shù)冒泡排序 c語言冒泡排
- 04-02c語言沒有round函數(shù) round c語言
- 04-02c語言分段函數(shù)怎么求 用c語言求分段
- 04-02C語言中怎么打出三角函數(shù) c語言中怎
- 04-02c語言調(diào)用函數(shù)求fibo C語言調(diào)用函數(shù)求
隨機閱讀
- 01-11ajax實現(xiàn)頁面的局部加載
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-10C#中split用法實例總結(jié)
- 04-02jquery與jsp,用jquery
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-10delphi制作wav文件的方法