📄 bcdcode.h
字号:
////////////////////////////////////////////////////////////////////////////////
// BCD压缩编码方法
////////////////////////////////////////////////////////////////////////////////
// Author : 黎达文
// Description : 实现BCD压缩编码方法,这里实现的是8421编码对照方案
// 不使用“10”,字符串低地址对应值的低半字节。
// 不足字节的填充符号是0xf.
// 例如:“123456789”--》0x21 43 65 87 f9
//十进制 8421BCD码 2421BCD码 余3码
//0 0000 0000 0011
//1 0001 0001 0100
//2 0010 0010 0101
//3 0011 0011 0110
//4 0100 0100 0111
//5 0101 1011 1000
//6 0110 1100 1001
//7 0111 1101 1010
//8 1000 1110 1011
//9 1001 1111 1100
//10 0001,0000 0001,0000 0100,0011
// Version : 1.0
//
// Standard include files : std_inc.hpp(by precompile header)
//
// Start Date : 2003年6月20日
//
// Change Log :
// 2003年6月20日 by 黎达文
// -- Created
////////////////////////////////////////////////////////////////////////////////
#ifndef INCLUDED_BCDCODE
#define INCLUDED_BCDCODE
#if defined(HAS_PRAGMA_ONCE)
#pragma PRAGMA_ONCE_DECLARE
#endif
namespace stk
{
//BCD encode/decode routine
class BcdCode
{
public:
enum {FILL_FLAG = 0xf};
static void encode(const char* str, std::string& bcd);
static void decode(const char* bcd, size_t length, std::string& str);
};
};
//define the stk name
typedef stk::BcdCode CTBcdCode;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -