python 十六进制转字符,python 16进制字符串转字符
//两个16进制的字符转成一个字节
int IsLowercase(有符号(同Internationalorganizations)国际组织字符)
{
(同Internationalorganizations)国际组织结果;
结果=字符=a 字符 { ;
返回结果;
}
int大写小写(int字符)
{
if ( IsLowercase(Character))
character-=32;
返回字符;
}
//这里是固定传入偶数个字符的16进制字符
void StrToHex(uint8_t *HexStr,uint8_t *HexNum,int hexCount)
{
uint8 _ t * tHexStr//r7
uint 8 _ t * xnum//R4
有符号整数计数;//r6
int HexResult//r8
char小写字符//r0
char tCount//r0
int i=hexCount
xStr=HexStr
xNum=HexNum
count=0;
十六进制结果=0;
while ( Count i *tHexStr)
{
low case character=upper case tolow((char)* xstr);
//判断非数字
if(小写字符0x 30 小写字符=0x3A){
if(小写字符 A 小写字符= G )//如果不是A-F之间的字符值那就错误退出
{
//printf((int)key必须是十六进制表示法\ n’);
返回;
}
十六进制结果=小写字符16 *十六进制结果-0x 37;//如果是A-F中的数
}否则{
十六进制结果=小写字符16 *十六进制结果-0x 30;//如果是数字
}
tCount=计数;
if ( tCount 1 ) //如果当前读的是奇数个那么就不存储到数组中如果是偶数个才将两个一起存到数组中
xnum[Count/2-1]=十六进制结果;
}
}
void HexToAscii(uint8_t *pHex,uint8_t *pAscii,int nLen)
{
无符号字符半字节[2];
无符号int i,j;
for(I=0;i nLeni ){
半字节[0]=(pHex[I]0xf 0)4;
半字节[1]=pHex[I]0x0F;
for(j=0;J2;j ){
if (Nibble[j] 10){
半字节[j]=0x 30;
}
否则{
如果(半字节[j] 16)
半字节[j]=半字节[j]-10 A ;
}
* pas CII=Nibble[j];
}
}
}
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。