數據通信基礎知識

數據通信基礎知識
在這裏插入圖片描述
計算機的物理底層是電路,他存儲信息的方式是電路的通斷,一般將通路定爲1,斷路定爲0所有信息所有信息都是通過二進制01來表示的,這也就是爲什麼會有各類編碼,編碼通過二進制來定義一個字符,例如a的ASCII碼是97,97是在計算機中用二進制表示,關於計算機亂碼的情況就是編碼的解析不一樣例如有下面的編碼,當文字是以一種編碼寫的,而讀取文字的軟件用另一種編碼的時候就會出現亂碼的情況
ASCII
總共有 128 個,用一個字節的低 7 位表示,0~31 是控制字符如換行回車刪除等;32~126 是打印字符,可以通過鍵盤輸入並且能夠顯示出來。
UTF-16
UTF-16 具體定義了 Unicode 字符在計算機中存取方法。UTF-16 用兩個字節來表示 Unicode 轉化格式,這個是定長的表示方法,不論什麼字符都可以用兩個字節表示,兩個字節是 16 個 bit,所以叫 UTF-16。UTF-16 表示字符非常方便,每兩個字節表示一個字符,這個在字符串操作時就大大簡化了操作,這也是 Java 以 UTF-16 作爲內存的字符存儲格式的一個很重要的原因。
UTF-8
UTF-16 統一採用兩個字節表示一個字符,雖然在表示上非常簡單方便,但是也有其缺點,有很大一部分字符用一個字節就可以表示的現在要兩個字節表示,存儲空間放大了一倍,在現在的網絡帶寬還非常有限的今天,這樣會增大網絡傳輸的流量,而且也沒必要。而 UTF-8 採用了一種變長技術,每個編碼區域有不同的字碼長度。不同類型的字符可以是由 1~6 個字節組成。
UTF-8 有以下編碼規則:
1、如果一個字節,最高位(第 8 位)爲 0,表示這是一個 ASCII 字符(00 - 7F)。可見,所有 ASCII 編碼已經是 UTF-8 了。
2、如果一個字節,以 11 開頭,連續的 1 的個數暗示這個字符的字節數,例如:110xxxxx 代表它是雙字節 UTF-8 字符的首字節。
3、如果一個字節,以 10 開始,表示它不是首字節,需要向前查找才能得到當前字符的首字節
GBK
全稱叫《漢字內碼擴展規範》,是國家技術監督局爲 windows95 所制定的新的漢字內碼規範,它的出現是爲了擴展 GB2312,加入更多的漢字,它的編碼範圍是 8140~FEFE(去掉 XX7F)總共有 23940 個碼位,它能表示 21003 個漢字,它的編碼是和 GB2312 兼容的,也就是說用 GB2312 編碼的漢字可以用 GBK 來解碼,並且不會有亂碼。

關於爲什麼要將數字信號轉化成模擬信號,數字信號在現實的成中並不是驟變的,而是漸變的,在某些情況下他會出現錯碼,例如一直高電平突然低電平,有時會因爲慣性而導致出錯,數字信號在傳輸過程中的損耗導致信息出錯的概率比模擬信號高,一般情況是計算機輸出數字信號,調製器用一個正弦波來裝載他進行傳輸。

通信的目的是傳遞信號
數據:傳送信號的實體,通常是有意義的符號序列
信號:數據的電氣/電磁的表現,是數據在傳輸過程中的存在形式
數字信號:表示消息的參數取值是離散的
模擬信號:表示消息的參數取值是連續的

信源:產生和發送數據的源頭
信宿:接收數據的終點
信道:信號的傳輸媒介,一般用法來表示向某一個方向傳送信息的介質,因此一條通信線路往往包含一條發送信道和一條接受信道

信道分類
按傳輸信號分
模擬信道(傳送模擬信號) 數字信道(傳送數字信號)
按傳輸介質分
無線信道 有線信道

三種通信方式

從通信雙方信息的交互方式來看,可以有三種最基本方式
1、單工通信:只有一個方向的通信而沒有反方向的交互,僅需一條信道 (一攻一受)
2、半雙工通信:通信的雙方都可以發送或接受信息,但任何一方都不能同時發送和接受,需要兩條信道(夢迴西遊回合制遊戲)
3、全雙工通信:通信雙方可以同時發送和接受信息,也需要兩條信道(手機電話)

兩種數據傳輸方式

傳輸方式
串行傳輸 速度慢,費用低,適合遠距離傳輸
並行傳輸 速度快,費用高,適合近距離傳輸

在這裏插入圖片描述