2014年4月24日 星期四

漢明碼概論+減錯系統

漢明碼(Hamming Code),是在電信領域的一種線性偵錯碼,以發明者理查德·衛斯里·漢明的名字命名。漢明碼在傳輸的訊息流中插入驗證碼,以偵測並更正單一位元錯誤。由於漢明編碼簡單,它們被廣泛應用於記憶體(RAM)。其 SECDED(single error correction, double error detection)版本另外加入一檢測位元,可以偵測兩個或以下同時發生的位元錯誤,並能夠更正單一位元的錯誤。因此,當傳送端與接收端的位元樣式的漢明距離 (Hamming distance) 小於或等於1時(僅有 1 bit 發生錯誤),可實現可靠的通信。相對的,簡單的奇偶檢驗碼除了不能糾正錯誤之外,也只能偵測出奇數個的錯誤。
在數學方面,漢明碼是一種二元線性碼。對於每一個整數m>2,存在一個編碼,帶有m個奇偶校驗位2^m-m-1個數據位。該奇偶檢驗矩陣的漢明碼是通過列出所有米欄的長度是兩兩獨立 。

奇偶

奇偶校驗是一種添加一個奇偶位用來指示之前的數據中包含有奇數還是偶數個1的檢驗方式。如果在傳輸的過程中,有奇數個發生了改變,那麼這個錯誤將被檢測出來(注意奇偶位本身也可能改變)。一般來說,如果數據中包含有奇數個1的話,則將奇偶位設定為1;反之,如果數據中有偶數個1的話,則將奇偶位設定為0。換句話說,原始數據和奇偶位組成的新數據中,將總共包含偶數個1.
奇偶校驗並不總是有效,如果數據中有偶數個位發生變化,則奇偶位仍將是正確的,因此不能檢測出錯誤。而且,即使奇偶校驗檢測出了錯誤,它也不能指出哪一位出現了錯誤,從而難以進行更正。數據必須整體丟棄並且重新傳輸。在一個噪音較大的媒介中,成功傳輸數據可能需要很長時間甚至不可能完成。雖然奇偶校驗的效果不佳,但是由於他只需要一位額外的空間開銷,因此這是開銷最小的檢測方式。並且,如果知道了發生錯誤的位,奇偶校驗還可以恢複數據。

數據位位置1234567891011121314151617181920...
編碼後數據位置p1p2d1p4d2d3d4p8d5d6d7d8d9d10d11p16d12d13d14d15
奇偶校驗位
覆蓋率
p1XXXXXXXXXX
p2XXXXXXXXXX
p4XXXXXXXXX
p8XXXXXXXX
p16
學生概述:
以漢明碼構築與資料相關的系統,應用於減錯的概念用途
以資料位元數判斷應使用的檢測模型,之後構築出的檢測器當有資料錯誤即於檢測位元結果顯示錯誤目標,若無錯誤即得全檢測碼為0,此為何謂{檢測&資料系統}中並無有權為資料0之資料

資料來源:維基百科
                高師大王蘭華老師上課教材&講述內容
                 學生概述由學生本人統整編述

浮點數概論

IEEE二進位浮點數算術標準IEEE 754)是20世紀80年代以來最廣泛使用的浮點數運算標準,為許多CPU浮點運算器所採用。這個標準定義了表示浮點數的格式(包括負零-0)與反常值(denormal number)),一些特殊數值(無窮(Inf)與非數值(NaN)),以及這些數值的「浮點數運算子」;它也指明了四種數值修約規則和五種例外狀況(包括例外發生的時機與處理方式)。
IEEE 754規定了四種表示浮點數值的方式:單精確度(32位元)、雙精確度(64位元)、延伸單精確度(43位元以上,很少使用)與延伸雙精確度(79位元以上,通常以80位元實做)。只有32位元模式有強制要求,其他都是選擇性的。大部分程式語言都有提供IEEE浮點數格式與算術,但有些將其列為非必需的。例如,IEEE 754問世之前就有的C語言,現在有包括IEEE算術,但不算作強制要求(C語言的float通常是指IEEE單精確度,而double是指雙精確度)。
該標準的全稱為IEEE二進位浮點數算術標準(ANSI/IEEE Std 754-1985),又稱IEC 60559:1989,微處理器系統的二進位浮點數算術(本來的編號是IEC 559:1989)[1]。後來還有「與基數無關的浮點數」的「IEEE 854-1987標準」,有規定基數為2跟10的狀況。現在最新標準是「IEEE 854-2008標準」。
在六、七十年代,各家電腦公司的各個型號的電腦,有著千差萬別的浮點數表示,卻沒有一個業界通用的標準。這給資料交換、電腦協同工作造成了極大不便。IEEE的浮點數專業小組於七十年代末期開始醞釀浮點數的標準。在1980年,英特爾公司就推出了單片的8087浮點數協處理器,其浮點數表示法及定義的運算具有足夠的合理性、先進性,被IEEE採用作為浮點數的標準,於1985年發行。而在此前,這一標準的內容已在八十年代初期被各電腦公司廣泛採用,成了事實上的業界工業標準。

二進位浮點數是以符號數值表示法的格式儲存——最高有效位被指定為符號位(sign bit)
;「指數部份」,即次高有效的e個位元,儲存指數部分;最後剩下的f個低有效位的位元
,儲存「尾數」(significand)的小數部份(在非規約形式下整數部份默認為0,其他情況
下一律默認為1)

結論:(學生描述)
浮點數為使用來簡化龐大的資料(LIKE指數)
整串32位元,依序表示:性質符號(即正負性)佔1位元--偏移指數8位元(127-標準化次方數,2進位表示佔滿8位元)--其餘資料位23位元(補足,剩餘補0)

資料來源:維基百科                               高師大王蘭華老師授課內容               學生整理概述

計概--錄音測試作業

作業網址位置: http://st84605zx.podomatic.com/entry/2014-04-24T20_18_13-07_00


 使用Audacity 錄製音檔(轉檔編碼器另外於選取對話方塊點取下載)
 再於PodOmatic上傳完成