資料壓縮小作業 計算機程式設計中的資料型別

2021-10-02 22:26:48 字數 2198 閱讀 5437

總結歸納計算機程式設計中的各種資料型別,其表示形式和計算方法。重點關注型別轉換、數值溢位和移位等操作。

short/unsigned short(16位)

int/unsigned int(32位)

long/unsigned long(32位)

·表示方法

short

int a;

//短整型

unsigned

short

int a;

//無符號短整型

int a;

unsigned

int a;

//無符號整型

long

int a;

unsigned

long

int a;

//無符號長整型

·溢位對於unsigned整型,溢位後的數會以2^(8*sizeof(type))作模運算;

對於signed整型,溢位會產生未定義行為。

範圍由指數的位數來決定,精度由尾數的位數來決定。

float(32位)單精度

1位符號位,8位指數字,23位尾數字

double(64位)雙精度

1位符號位,11位指數字,52位尾數字

·表示方法

float a;

double a;

·溢位浮點數的溢位是以階碼溢位來表現的,階碼的符號位若為01或10表示溢位。

向上溢位時,若浮點數為正數則記為+∞,若浮點數為負數則記為-∞;

向下溢位時,則置運算結果為機器零。

char(8位)

·表達方式

char a;
·溢位對於unsigned字元型,溢位的值會與256求模;

對於signed字元型,溢位後會取第八位,並進行補碼的反向操作,減一後取反。

·計算方法

char與unsigned char均轉換為int型進行計算。

整型和字元型可進行移位操作,浮點型不可進行移位操作。

1.有符號資料型別的移位

負數左移(×2):符號位始終為1,其他位左移,低位補0;

正數左移(×2):所有位左移,有可能會變為負數,低位補0;

負數右移(÷2):取絕對值後右移,高位補1,再取相反數(補齊符號位);

正數右移(÷2):所有位右移,高位補1。

2.無符號資料型別的移位

左移與右移均為邏輯移位

左移(×2):不會導致符號位出現缺位,不需考慮符號位,低位補0;

右移(÷2):高位補1。

自動轉換

自動轉換都是隱式的保值轉換,轉換原則是由低型別向高型別的轉換。

int型最低,long double型最高。其中,short型和char型自動轉換為int型,float型自動轉換為double型。

強制轉換

1.顯示強制轉換

通過強制轉換運算子()來實現。強制轉換一般用來將高型別轉換為低型別,可能會出現資料精度的損失,是非保值轉換。是暫時的,不被強制轉換時還為原來的型別。

double a=

2.25;a=(

int)a;

2.隱式強制轉換

①賦值表示式中,右值表示式的型別隱式轉換為左值變數的型別。

int a=true;

//bool型被轉換為int型

bool a=2;

//int型被轉換為bool型

②被呼叫函式帶有返回值時,將return後面的表示式隱式強制轉換為函式的型別。

int add(double a,double b)

資料壓縮課前任務一 計算機程式設計中的資料型別

整型資料 int 以補碼形式儲存 無符號整型資料 unsigned int 以無符號數形式儲存 型別轉換 int 與 unsigned int 之間進行相同資料型別運算時,結果型別不變 若 int 與 unsigned int 進行運算時,結果為 unsigned int 型。數值溢位 無符號數溢位...

作業1 計算機程式設計中資料型別相關知識

總結歸納計算機程式設計中的各種資料型別,其表示形式和計算方法。重點關注型別轉換 數值溢位和移位等操作 計算機程式設計中的資料型別主要有整型 浮點型 字元型 表示形式 int 有符號整型 4位元組 unsigned int 無符號整型 4位元組 short int 短整型 2位元組 unsigned ...

計算機中數的表示

異或 xor,exclusive or 運算的真值表如下 ab a xor b00 0011 1011 10用一句話概括就是 兩個運算元相同則結果為0,兩個運算元不同則結果為1。與非 nand 和或非 nor 運算就是在與 或運算的基礎上取反 ab a nand b00 1011 1011 10 a...