c語言,為什麼int型別在16位系統中佔位元組,在32位系

時間 2021-10-17 02:37:57

1樓:海天盛

常用的位元組是8位的位元組,即包含8位的二進位制數,因此4個位元組就是32位。如下參考:

位元組是二進位制資料的單位。乙個位元組通常是8位長。然而,一些較老的計算機結構模型使用不同的長度。為了避免混淆,在大多數國際文獻中都使用字位元組而不是字位元組。

在大多數計算機系統中,位元組是8位長資料的單位,大多數計算機使用位元組來表示字元、數字或其他字元。

資料儲存是以「位元組」為單位,資料傳輸大多以「位」(bit,也稱「位」)為單位,位表示0或1(即二進位制),每8位(bit,縮寫為b)構成乙個位元組(縮寫為b),是最小級別的資訊單位。

擴充套件資料:

有關計算機的單位的作用:

在計算機中,作為乙個整體處理或操作的一串數字被稱為計算機字,或簡稱,乙個字通常被分成幾個位元組(每個位元組通常是8位)在記憶體中,每個單元通常儲存乙個單詞,因此每個單詞都是可定址的。乙個字的長度是以位來表示的。

在計算機的運算單元中,控制器通常以字單元進行傳輸。單詞出現在不同的位址,具有不同的含義。例如,傳送給控制器的字是一條指令,而傳送給算術單元的字是乙個數字。

2.單詞長度:

計算機的每個字中包含的位數稱為字長。計算的字長是一次可以處理的二進位制數字的數目。當然,計算機處理資料的速度與它一次能處理的位元數和處理資料的速度有關。

例如如果一台計算機的字長是另一台計算機的兩倍,那麼即使兩台計算機的速度相同,前者也可以在同一時間完成兩倍的工作。

2樓:匿名使用者

所謂的16位32位64位系統是由cpu決定的,由機器指令的定址、暫存器位數決定的

os受cpu的限制,但在32位的cpu下16位的os也可以跑(就向上面提到的所謂純dos)

很多os是向前相容的,就是使以前的程式也能執行,如果編譯器本身是16位時代做的,那麼os會提供乙個模擬16位的子環境供這個編譯器使用

sizeof只是編譯時常量,不能做到二進位制相容(移植)

int只是語言定義裡面的乙個關鍵字,只對compiler可見,complier說它是幾位就是幾位,和os/cpu都沒關係

3樓:匿名使用者

在32位系統中int佔4個位元組,32位

16位系統中佔2個位元組,16位

佔多少位是根據系統來定的,乙個位元組固定是8位

4樓:

int就是定義個暫存器,、1位元組就是8位、、、

5樓:匿名使用者

看你使用的是tc,還是vc啦,它在不同的編譯軟體中佔的記憶體是不同的。不知道能不能幫到你!

關於32位系統中int,float,short,double等佔多少個位元組

6樓:好程式設計師

不同的計算機是不完全一樣的, int 2或4位元組 float 4位元組 double 8位元組 long int 4位元組 有效位數為位元組數乘8-1(減去這個符號位) 可以用如下**檢視 #includeint main()

7樓:匿名使用者

各資料型別所佔字元數如下:int 4位元組float 4位元組double 8位元組long 4位元組unsignedlong 4位元組可以通過如下的語句進行驗證。printf("%d\n", sizeof(int)); // 計算int型所佔位元組數printf("%d\n", sizeof(float)); // 計算float型所佔位元組數printf("%d\n", sizeof(double)); // 計算double型所佔位元組數printf("%d\n", sizeof(long)); // 計算long型所佔位元組數printf("%d\n", sizeof(unsigned long)); // 計算unsigned long型所佔位元組數

在C語言中,如果下面的變數都是int型別,則輸出的結果是要解釋,不要只給答案。)

寂 滅丶天 驕 pa 7,因為是乙個逗號運算子,最後乙個表示式的值為逗號表示式的值,變數在前等於自加減前的值,變數在後等於自加減後的值,所以s 6,p s 5。p 6,p 7,滿意請採納,謝謝 sum pa 5 sum 5,pa 5pa sum 在後先賦值再自增,pa 5,sum 6pa 同理pa ...

C語言的int型別變數範圍是多少

育知同創教育 c 語言的 int 型別變數範圍是 32,768 to 32,767 或者 2,147,483,648 到 2,147,483,647 測試int變數的位元組數 include include int main 結果 storage size for int 4說明int型變數占用4個...

C語言int型別變數a 3 0對嗎

c語言程式在執行中會自動將3.0轉換成整數3賦值給a 這是c的特點,隱式轉換!所以,這樣寫在應用中沒有問題 這個程式會提醒有警告,但不影響程式的執行,程式會自動將這個a的值賦為2的,即自動隱式換成整數型別。 可以,但是最後a 的值為3,因為系統會將3.0自動轉換為3, 對是對的,但是這是乙個不好的程...