#include "StdAfx.h" #include "public.h" #include #include #include #include const unsigned char hextable[]={"0123456789ABCDEF"}; void ConvAscii(unsigned char *Hex,char *Ascii,unsigned int len) { unsigned int i; for(i=0;i>4]; Ascii[2*i+1]=hextable[Hex[i]&0xf]; } Ascii[2*len]=0; } //******************************************************************************* void AsciiToHex(char *Ascii,unsigned char *Hex,int len) { int i; unsigned char ch; for(i=0;i'9') ch+=9; Hex[i/2]=ch<<4; ch=Ascii[i+1]&0xf; if(Ascii[i+1]>'9') ch+=9; Hex[i/2]+=ch; } } int convTo3x(unsigned char*from,int flen,char*to) { int i = 0; unsigned char ch; for(i=0;i>=4; ch&=0x0f; ch|=0x30; to[i*2] = ch; ch=from[i]; ch&=0x0f; ch|=0x30; to[i*2+1]=ch; } return flen*2; } int _3xToHex(char *Ascii,unsigned char *Hex,int len) { int i = 0,j=0; unsigned char tmp[512] = {0}; unsigned char ch; for(i = 0;i= 0; i--) { if(a[i] > 0) break; } if(i == -1) { return 0; } temp = i; bitlen = temp << 3; for (i = 7; i >= 0; i--) { if (a[temp] & (1 << i)) break; } bitlen += (int)(i + 1); return bitlen; }