1. 程式人生 > >計算機儲存單位以及不同儲存型別所佔位元組,32位電腦64位電腦區別

計算機儲存單位以及不同儲存型別所佔位元組,32位電腦64位電腦區別

32位電腦64位電腦區別:

CPU一次處理資料的能力是32位還是64位,所謂32位處理器就是一次只能處理32位,也就是4個位元組的資料,而64位處理器一次就能處理64位,即8個位元組的資料。

bit就是:位,也就是我們常說計算機能處理的:01010101;

b就是:位元組;

1位元組=8位,我們說的32w位,就是cpu一次處理的資料量也就是4位元組。64位就是8位元組。用於大型音視訊播放以及3D建模等等。

bit 位 1byte=8bit
b byte 一位元組
kb 一千位元組 1kb=1024byte
mb 一兆位元組 1mb=1024kb

計算機的位是以0和1來表示 比如 定義一個byte:00001111 (8

bit,1byte)

下面看看普通資料型別所佔的儲存大小:

以位元組最大是:11111111;也就是:255(十進位制) = 11111111(二進位制)

下面你就很好的瞭解了unsigned與signed的意義了。

型別 儲存大小 值範圍
char 1 位元組 -128 到 127 或 0 到 255
unsigned char 1 位元組 0 到 255
signed char 1 位元組 -128 到 127
int 2 或 4 位元組 -32,768 到 32,767 或 -2,147,483,648 到 2,147,483,647
unsigned int 2 或 4 位元組 0 到 65,535 或 0 到 4,294,967,295
short 2 位元組 -32,768 到 32,767
unsigned short 2 位元組 0 到 65,535
long 4 位元組 -2,147,483,648 到 2,147,483,647
unsigned long 4 位元組 0 到 4,294,967,295

例:

#include <stdio.h>

int main(void)

{

    int aa=2147483647; int ss=2147483648;
    
    printf("aa=%d",aa); 
    printf("aa=%d",ss); 
      return 0;

}

輸出:

aa=2147483647aa=-2147483648

超出範圍返回負數一側的;假如負數一側的超出則報錯;

255(十進位制) = 11111111(二進位制)