十六进制转换为BCD码

来源:互联网 发布:个人信息管理系统源码 编辑:程序博客网 时间:2024/05/17 08:57

bcd_add_1(&ptempc->temp_param.limit_t);

void bcd_add_1(unsigned char *s)
{
    if((*s & 0x0f) == 9)
    {
      *s = (*s & 0xf0) + 0x10;
    }
    else
      (*s)++;
}


bcd_sub_1(&ptempc->temp_param.limit_t);

void bcd_sub_1(unsigned char *s)
{
    if(0 == *s) return;
    if((*s & 0x0f) == 0)
    {
      *s = (*s | 0x09) - 0x10 ;
    }
    else
      (*s)--;
}

0 0
原创粉丝点击