⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 coder.cpp

📁 7Zip软件实现: 七种编码格式的压缩与解压缩功能。
💻 CPP
字号:
inline unsigned int RangeCoder::GetChar(){  return(UnpackRead->GetChar());}void RangeCoder::InitDecoder(Unpack *UnpackRead){  RangeCoder::UnpackRead=UnpackRead;  low=code=0;  range=uint(-1);  for (int i=0;i < 4;i++)    code=(code << 8) | GetChar();}#define ARI_DEC_NORMALIZE(code,low,range,read)                           \{                                                                        \  while ((low^(low+range))<TOP || range<BOT && ((range=-low&(BOT-1)),1)) \  {                                                                      \    code=(code << 8) | read->GetChar();                                  \    range <<= 8;                                                         \    low <<= 8;                                                           \  }                                                                      \}inline int RangeCoder::GetCurrentCount() {  return (code-low)/(range /= SubRange.scale);}inline uint RangeCoder::GetCurrentShiftCount(uint SHIFT) {  return (code-low)/(range >>= SHIFT);}inline void RangeCoder::Decode(){  low += range*SubRange.LowCount;  range *= SubRange.HighCount-SubRange.LowCount;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -