📄 hexasc.c
字号:
/*-------------------------------------------------------------------------------------------*
* Hex码与Ascii码的相互转换 *
*-------------------------------------------------------------------------------------------*/
HexAsc HexAscPool; //暂存Hex与Ascii的变量
/*-------------------------------------------------------------------------------------------
*函数原型: void Hex2AscTrans(void) *
*参数说明: 无 *
*功能: 用于把HexAscPool.HexCode中的8位字节转化为两个Ascii码 *
* 高位放入HexAscPool.AscCodeHi *
* 低位放入HexAscPool.AscCodeLow *
*说明: 用于Hex—>Ascii的转换 *
-------------------------------------------------------------------------------------------*/
uchar code H2ATab[16]={
0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39, //0~9
0x41,0x42,0x43,0x44,0x45,0x46 //A~F
};
void Hex2AscTrans(void) {
HexAscPool.AscCodeLow=H2ATab[(HexAscPool.HexCode)&(0x0F)];
HexAscPool.AscCodeHi=H2ATab[((HexAscPool.HexCode)&(0xF0))>>4];
}
/*-------------------------------------------------------------------------------------------
*函数原型: void Asc2HexTrans(void) *
*参数说明: 无 *
*功能: 用于把HexAscPool.AscCodeHi与HexAscPool.AscCodeLow合并成一个8位Hex码 *
* 结果放入HexAscPoo.HexCode *
*说明: 用于Ascii—>Hex的转换 *
-------------------------------------------------------------------------------------------*/
uchar code A2HTab[]={
0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09, //0~9
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, //未用
0x0A,0x0B,0x0C,0x0D,0x0E,0x0f //A~F
};
void Asc2HexTrans(void) {
HexAscPool.HexCode=(A2HTab[HexAscPool.AscCodeHi-0x30])<<4;
HexAscPool.HexCode=HexAscPool.HexCode|(A2HTab[HexAscPool.AscCodeLow-0x30]);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -