C语言中整型在计算机中的存储
一 . 整型的表示
? ? ? 1.字面值后面加上L(l)表示long長整型
? ? ? 2.字面值后面加上U(u)表示usigned整型值
? ? ? 3.十進制123 ?...
? ? ? 4.八進制,以0開頭,如0123,0754 ?...
? ? ? 5.十六進制,以0x開頭,如0xF32 ?...
二 .整型的分類和表示范圍
? ? char型,前一篇文章已經說過,在此不再熬述
? ? int :是有符號還是無符號的整型,在不同的編譯器中不同,這里統一把它視為有符號的整型進行討論
? ? ? ? ? ? ?不論在32位還是64位機器中均是4個字節(32個bit位),所以其最高位表示符號位(0正1負),剩下的31個位表示數據位,取值范圍是-2147 483 648-2147 483 647(-2^31---2^31-1)。在《字符型在計算機中的存儲》中講到正0和負0,這里也不再熬述。
? ? signed int :4個字節,和int一樣
? ? unsigned int :4個字節,32個bit位全部為數據位,表示的范圍是0---2^32-1
? ? short 和unsigned short:32位機器和64位機器中均為2個字節,用同樣的方法可以表示取值范圍
? ? long 和 unsigned long:32位機器中位4個字節,64位機器中位8個字節
? ? long long 和unsigned long long :32位機器中為8個字節,64位機器中為8個字節
三 . 整型的存儲和讀取
? ? 1.整型存儲:整型在計算機中是以補碼的形式存儲的,當計算機遇到一個十進制整型數字時,首先將其轉化成二進制(原碼),接著最高位不變,其余位按位取反(反碼),然后再加1(補碼)。而正數的原碼反碼補碼相同
? ? 2.整型讀取:首先會根據讀取要求,如果要求讀取無符號數,因為無符號數是非負的,則直接將數據當成原碼,把它轉化成十進制整數。
? ? ? ?如果要求讀取有符號數,則首先將得到的數據(補碼)減去1,得到反碼,然后最高位不變,其余位按位取反,得到原碼,再將其轉化成十進制輸出。
 
 
總結
以上是生活随笔為你收集整理的C语言中整型在计算机中的存储的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 最近有啥好看的电视剧仙侠还没播出
- 下一篇: C语言中浮点型在计算机中的存储
