實現最優二叉樹的構造;在此基礎上完成哈夫曼編碼器與譯碼器。 假設報文中只會出現如下表所示的字符:
字符 A B C D E F G H I J K L M N
頻度 186 64 13 22 32 103 21 15 47 57 1 5 32 20 57
字符 O P Q R S T U V W X Y Z , .
頻度 63 15 1 48 51 80 23 8 18 1 16 1 6 2
要求完成的系統應具備如下的功能:
1.初始化。從終端(文件)讀入字符集的數據信息,。建立哈夫曼樹。
2.編碼:利用已建好的哈夫曼樹對明文文件進行編碼,并存入目標文件(哈夫曼碼文件)。
3.譯碼:利用已建好的哈夫曼樹對目標文件(哈夫曼碼文件)進行編碼,并存入指定的明文文件。
4.輸出哈夫曼編碼文件:輸出每一個字符的哈夫曼編碼。
EasyARM2100工程模板
該工程模板在文件夾EasyARM2100下,適用于EasyARM2104和EasyARM2100開發板。
該模板在文件夾EasyARM2100下,適用于EasyARM2100開發板,僅適合于用ADS編譯器的器情況。
模板文件夾下有一些文件夾,用于存放產生的文件。src文件夾用于存放用戶的源文件。
模板包含了EasyARM系列開發板的啟動代碼、初始化文件、分散加載文件等。這些文件和ADS模板的文件相同。
模板已經為用戶設置好了各種生成目標的設置選項,包括仿真片內RAM調試、片外RAM調試、片內FLASH調試、片內FLASH發布,以及所需要的初始化文件。對不同開發板和不同芯片,生成目標會有所不同。在模板文件夾下有各種不同生成目標的文件夾,用于存放各自的輸出文件。
EasyARM2100模板,有Simulator、Debug in RAM、Debug in FLASH和Release in FLASH 4種生成目標