我需要一個快速的解壓縮程序二進制(十六進制數據)禁區資源環境優化像嵌入式系統例程,它具有以下特點:什麼將是一個很好的(de)壓縮爲這種情況
- 數據是8位(字節)導向(數據總線是8位寬)。
- 字節值不是從0到0xFF的範圍,而是在每個DataSet中都有一個泊松分佈(鐘形曲線)。 (被燒燬到Flash)
- 數據集固定在先進,每組很少> 1 - 2MB
壓縮可以隨着時間的需要一樣多,但一個字節減壓應採取23uS在最壞因爲它將在像嵌入式系統(3Mhz - 12Mhz核心,2k字節RAM)這樣的受限資源環境中完成。
什麼是一個很好的解壓程序?
基本運行長度編碼似乎太浪費了 - 我可以馬上看到,添加標題相間螺旋纏繞製成的壓縮數據,以投入使用未使用的字節值來表示經常重複的模式會給驚人的表現!
隨着我,誰只投入了幾分鐘,肯定有必須已經存在,從誰愛這東西的人更好的算法?
我想有一些「蓄勢待發」的例子嘗試在電腦上,這樣我可以比較性能面對面的人基本RLE。
你真的指256字節的RAM嗎?因此,如果一個壓縮字節可以擴展到> 256個未壓縮字節,那麼它們就沒有空間了。 –
連續字節之間是否存在關聯?壓縮是否有損? – David
如果這與6502或z80類似,大多數(所有?)指令都需要幾個時鐘週期,並且在2MHz時需要超過1微秒的時間。 – David