計算機系統基礎:校驗碼知識筆記

1、校驗碼概念

校驗碼主要是為了解決計算機各部件進行數據傳輸和交換,確保傳送過程的正確無誤,一是為了提高硬件電路的可靠性,二是提高代碼的校驗能力。通常會用校驗碼來檢查傳送的數據是否正確。

校驗碼編碼分為兩類:合法編碼、錯誤編碼。合理的設計錯誤編碼和編碼規則,可以在數據傳輸的時候發現某種錯誤是就會變成錯誤編碼,從而達到檢驗錯誤的目的。

碼距:指的是一個編碼系統中任意兩個合法編碼之間至少有多少個二進制位不同。

常用的三種校驗碼:奇偶校驗碼、海明碼、循環冗余校驗碼。

2、校驗碼分類

3.1 奇偶校驗碼(Parity Code)

奇偶校驗碼特點如下:

無論數據位多少位,校驗位只有一位

數據位和校驗位一共所含的1個數為奇數,稱為奇校驗

數據位和校驗位一共所含的1個數為偶數,稱為偶校驗

原理:在數據傳輸前,我們會求一次校驗位,傳輸后,會求一次校驗位,那么,在奇偶校驗中,我們通過比較這兩個校驗位是否相同,一般是采用異或的方式,若結果為1,則說明有奇數個錯誤,結果為0,則說明正確或者偶數個錯誤。

常見的奇偶校驗碼 :水平奇偶校驗碼、垂直奇偶校驗碼、水平垂直奇偶校驗碼。

3.2 海明碼(Hamming Code)

設數據位是n位,校驗位是k位,則n和k滿足以下關系:

2^k-1>=n+k

k 常取滿足該關系的最小值。

選擇題公式,可以記住

? ? ? ?? ? ? ?

3個原則

海明碼只能檢測出2位錯,糾1位錯

海明碼默認進行偶校驗(除非特殊說明使用奇校驗)。

海明碼是一串由0和1組成的序列(除01外沒有其他的值)

3.3 循環冗余校驗碼 CRC

循環冗余校驗碼廣泛應用于數據通信領域和磁介質的存儲系統中,它利用生成多項式為k個數據位產生r個校驗位來進行編碼,其編碼長度為k+r。CRC的代碼格式如下:

??? ? ?? ? ? ?

循環冗余校驗碼有兩部分組成:數據為、校驗位。若數據位占k位,則校驗位占n-k位。n為CRC碼的字長。檢驗碼越長校驗能力就會越強。在CRC編碼是,采用的是模2運算,模2運算加減運算的規則是按位運算,不發生借位和進位。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/271589.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/271589.shtml
英文地址,請注明出處:http://en.pswp.cn/news/271589.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

qml與HTML數據交互,GitHub - toby20130333/QtQuickHtmlBridge: 基于QtQuick的C++,qml,Html三者的Bridge交互...

基于QtQuick的C,qml,Html三者的Bridge交互主要功能自定義C對象并注冊到QML可以在QML中繼續擴展C對象的屬性和方法 信號等將C對象注入到WebChannelHtml中引入C對象JavaScript與C直接交互示例代碼說明main.cpp://該實例必須直接繼承自Object的 QWidget的忽略qmlRegisterType(&quo…

html為什么要進行表單驗證_化學錨栓為什么要進行拉拔試驗?

點擊箭頭處“藍色字”,關注我們哦!!化學錨栓是繼膨脹錨栓之后出現的一種新型緊固材料,由化學藥劑與金屬桿體組成,是通過特制的化學粘接劑,將螺桿膠結固定于砼基材鉆孔中,以實現對固定件錨固的復…

電路基礎知識講解(太全面了)

IT技術分享社區個人博客網站:https://programmerblog.xyz文章推薦程序員效率:畫流程圖常用的工具程序員效率:整理常用的在線筆記軟件遠程辦公:常用的遠程協助軟件,你都知道嗎?51單片機程序下載、ISP及串口基…

github設置倉庫可見性 私人倉庫設置

一:點擊Setting 二:點擊Make private 三:閱讀關于將倉庫設為私有的警告。 入您要設為私有的倉庫的名稱,例如 accountname/reponame。 單擊 I understand, make this repository private(我已了解,請將此倉庫設為私有)

Git合并分支操作

1. 添加自己的文件 git add .; 2. 緩存自己的文件 git stash; 3. 查看狀態 git status; 4. 獲取別的分支 git pull origin master(分支名); 5. 出棧自己的文件 git stash pop 。 轉載于:https://www.cnblogs.com/csl0910/p/5605868.html

html鼠標懸停區域拉伸,html – :將鼠標懸停在具有邊框半徑的div上

這里的問題是子元素不繼承父元素的border-radius.有兩種方法可以實現您想要的:您可以將子元素的border-radius設置為匹配或大于父元素的radius,或者將父元素的overflow屬性設置為hidden.這是一個快速的片段,說明了問題和兩個解決方案:*{box-sizing:borde…

rfid在高速公路管理中的應用_RFID技術與ETC技術在弱電門禁系統中應用

前言:無線射頻識別技術(RFID技術)較早的大規模的綜合應用,發展至今,我國的RFID技術已經較為成熟。 相關技術1、無線射頻識別 RFID(Radio Frequency Identification,無線射頻識別)是一種非接觸式的自動識別技術,它通過射…

Idea中Terminal中git基本操作

列出分支 列出分支基本命令:git branch 沒有參數時,git branch 會列出你在本地的分支。 上圖的意思就是,我們有一個叫做 master 的分支,并且該分支是當前分支(有*星號的)。 當你執行 git init 的時候,默認情況下 Gi…

計算機體系結構知識筆記

計算機體系結構結構:計算機的概念結構、功能和性能特性,它從一個更高的層次對計算機的結構特征等宏觀特征進行研究。 1、計算機體系結構分類 2、CISC和RISC 指令體系結構(ISA):一個處理器支持的指令和指令的字節級編碼…

java類的加載機制

一、什么是類的加載 類的加載指的是將類的.class文件中的二進制數據讀入到內存中,將其放在運行時數據區的方法區內,然后在堆區創建一個java.lang.Class對象,用來封裝類在方法區內的數據結構。類的加載的最終產品是位于堆區中的Class對象&…

HttpServletRequestWrapper、HttpServletResponseWrapper結合 過濾器 實現接口的加解密、國際化

目錄 一、HttpServletRequestWrapper代碼 二、HttpServletRequestWrapper代碼 三、加解密過濾器代碼 四、國際化過濾器代碼 一、HttpServletRequestWrapper代碼 package com.vteam.uap.security.httpWrapper;import jakarta.servlet.ReadListener; import jakarta.servlet.…

razor 寫入html標記,如何在Razor中編寫“ Html.BeginForm”

泛舟湖上清波郎朗以下代碼可以正常工作:using (Html.BeginForm("Upload", "Upload", FormMethod.Post, new { enctype "multipart/form-data" })){ Html.ValidationSummary(true) …

windows安全模式_Winclone 8 for Mac(Windows分區備份遷移和還原工具)

winclone 8 Mac版是一款專業的boot Camp遷移助手,能夠將你的PC移動到你的Mac中,讓你實現win系統的遷移。winclone Mac版可以將Bootcamp分區安裝的windows進行克隆也可將克隆文件傳回Bootcamp分區。并且操作簡單。你只需要通過幾次點擊,就能快…

IDEA中一個被低估的功能,一鍵把項目代碼繪制成UML類圖

閱讀本文大概需要 2 分鐘。來自:blog.csdn.net/hy_coming/article/details/80741717最近在開發的過程當中,對于已有的代碼,想將相關類繪制成UML類圖,雖然現在有很多UML類圖的優秀軟件,比如ProcessOn(可視化…

java導出生成word(類似簡歷導出)

最近做的項目,需要將一些信息導出到word中。在網上找了好多解決方案,現在將這幾天的總結分享一下。 目前來看,java導出word大致有6種解決方案: 1:Jacob是Java-COM Bridge的縮寫,它在Java與微軟的COM組件之間…

計算機基礎:存儲系統知識筆記(一)

1、存儲系統定義 由一個不同容量、成本和訪問時間的存儲結構構成的層次結構,這些存儲器通過適當的硬件和軟件有機的組合在一起。 存儲器的層次:CPU內部的寄存器、高速緩存Cache、主存儲器、輔助存儲器 2、存儲器的分類 2.1 存儲位置分類 內存&#xff1a…

html5和c3屬性,H5與C3不得不說的知識點

1 HTML 5html5包含htm5 css3 javascript1.1 新增語義標簽頭部導航欄塊級內容側邊欄腳部注意:可以多次使用;ie9中需要轉換為塊級元素;針對搜索引擎;針對于移動端;1.2 新增多媒體標簽1.2.1 音頻標簽 audio格式&#xf…

ae繪圖未指定錯誤怎么辦_早晨深化設計研究院47個快捷鍵50個CAD技巧助你神速繪圖,玩轉CAD...

終于知道為什么別人用CAD總比我快了,原來他們早就掌握了這些實用的CAD技巧,還沒看完我就默默地轉了,總有用得到的時候。一、47個快捷鍵1. 創建直線的快捷方式是L空格2. 創建圓的快捷方式是C空格3. 創建圓弧的快捷方式是A空格4. 創建矩形的快捷…

iOS項目架構 小談

層級結構,自底向上 持久層(File,Realm,SQLite)<>網絡層(相信每個公司都有自己的網絡層吧)>業務層(ViewModel)>展示層(View,VC) 持久層 耦合到網絡層 設計要點 持久模型的選擇&#xff0c;我這里選擇了文件&#xff0c;直接緩存了JSON.txt。并且維護一張表映射到文件…

計算機基礎:存儲系統知識筆記(二)

1、高速緩存 1.1 定義 用來存放當前最活躍的程序和數據。 特點&#xff1a;容量在幾千字節到幾兆之間&#xff0c;速度比主存快5~10倍左右。快速半導體組成。 1.2 高速緩存的組成 一般位于CPU和主存之間。主要包括管理模塊、由相聯存儲器構成的存儲表、小容量的高速存儲器。 1.…