第二章 數制與編碼 帶你走進0和1的世界

2021-08-17 05:10:26 字數 1817 閱讀 2738

本章重點內容:

1,無符號數的表示與運算

2,帶符號數的表示與運算

3,資訊的編碼

4,數的定點與浮點表示法

1,各種進製的表示

注:預設字尾的情況下預設為十進位制

2,各種進製數間的轉換

1)其他進製轉化為十進位制

按權展開求和法

2)十進位制轉化為其他進製

對於整數部分,除基取餘法

對於小數部分,乘基取整法

3)2^r進製之間的轉換

乙個十六進製制化為4位二進位制

乙個八進位制化為3位二進位制

每位十六進製制數化為4位二進位制數,每3個二進位制數為一組,化為八進位制數

3,二進位制數的算術/邏輯運算1,機器數與真值

乙個數及其符號位在機器中的一組二進位制數表示形式成為「機器數」。機器數所表示的值成為該機器數的真值。

2,機器數的表示方法

機器數包括:

3,真值與機器數之間的轉換

1)原碼轉化為真值

按權展開求和法,符號位決定符號

2)反碼轉化為真值

先轉化為原碼,然後按權展開求和法,符號位決定符號

3)補碼轉化為真值

先轉化為反碼,再轉化為原碼,再按權展開求和,符號為決定符號

4,補碼的加減運算

1)補碼的加法運算法則為:

2)補碼減法的運算法則為:

5,溢位及判斷方法

進製:所謂進製,是指運算結果的最高位向最高位的進製,用來判斷無符號數運算結果是否超出了計算機所能表示的最大無符號數的範圍。

溢位:所謂溢位,是指帶符號數的補碼運算溢位,用來判斷帶符號數補碼運算結果是否超出了補碼所能表示的範圍。例如,字長為8位的帶符號數,它能表示的補碼範圍為:-128~127,若運算結果超出此範圍,就叫補碼溢位,簡稱溢位。

判斷方法

1)觀察法

通過參加運算的兩個數的符號及運算結果的符號進行判斷。

2)單符號位法

通過對符號位、數值部分最高位的進製狀態進行判斷結果是否溢位。

符號位進製狀態用cf來表示:cf=0 向前無進製,cf=1 向前有進製

數值部分最高位進製狀態用df來表示:df=0 向前無進製,df=1 向前有進製

單符號位法就是通過該兩位進製狀態的異或結果來判斷是否溢位的。

of=cf異或df

a,無符號數:cf=0則無溢位,cf=1則溢位。

b,符號數補碼:of=cf異或df,of=0則無溢位,of=1則溢位。

計算機中有兩種常見的資訊編碼:

1,bcd編碼

1)壓縮性bcd碼用乙個位元組表示兩位十進位制數,如:10000110b表示十進位制數86

2)非壓縮性bcd碼用乙個位元組表示一位十進位制數,高四位總為0000,如:00000110b表示6d

優缺點:簡化了人機聯絡,但比純二進位制編碼效率低。

3)十進位制與bcd碼互相轉化

4)bcd碼的修正問題

a,若兩個對應位bcd數相加的結果向高位無進製,且結果小於等於9,則無需修正;若大於9而小於16,則該位需加6修正。

b,若對兩個對應位bcd數相加的結果向高位有進製,即結果大於或等於16,則該位要加6修正。

2,ascii碼

比較重要的是0dh和0ah。

略略略……

第二章 變數和基本型別1

關於c 的幾篇部落格,參考人民郵電出版社的 c primer 中文版 一書。c 的基本內建型別包括 void型別 布林值 單個字元 整型 浮點型 5種 其中 void通常作為無返回值的函式的返回值型別。布林值bool,可以為其賦任何值,0即false,非0即true。單個字元即c語言中的字元常量,u...

第二章 傳輸層 TCP UDP和SCTP 1

1.tcp ip協議族總圖 ipv4 網際協議版本4 internet protocol version 4 使用32位位址。ipv4給tcp udp sctp icmp和igmp提供分組遞送服務。ipv6 網際協議版本6 internet protocol version 6 使用128位位址。給...

C語言 第二章 分支和迴圈語句 1

在c語言中由乙個 隔開的就是乙個語句。例如printf misaki 1 2 等等。if語句if 表示式 語句 形式二 if 表示式 語句1 else 語句2 形式三 if 表示式 語句1 else if 表示式 語句2 else 語句三 簡單解釋一下,如果if括號中的表示式成立則執行語句1,如果不...