永发信息网

用C语言实现CRC编码程序

答案:1  悬赏:50  手机版
解决时间 2021-11-23 10:07
用C语言实现CRC编码程序
最佳答案
#include
#include
#include "stdlib.h"
unsigned int char2int(char *str)
{
unsigned int count=0, ret=0;
for(count = 0; count {
ret = ret<<1;
if('0' != str[count])
{ ret+=1;}
}
return ret;
}

unsigned int getR(char *str)
{
unsigned int c =0 ;
int ret = strlen(str)-1;
for(c=0;c < strlen(str);c++)
{if(str[c] != '0')
{return ret-c;}
}
}

int getRi(unsigned int num)
{
int c =0;
for(;num != 0; c++)
{num = num>>1;}
return c;
}

void CRC(char *scode, char *p, char*g )
{
unsigned int iP = char2int(p);
unsigned int iG = char2int(g);
unsigned int r= getR(g);
unsigned int code = iP << r;
unsigned int yx = code;
for(;getRi(yx) >= getRi(iG);)
{ yx = yx ^ (iG<<(getRi(yx) - getRi(iG)));}
code += yx;
itoa(code,scode,2);
}

void main() //定义主函数
{
char data[8]="" , bds[8]="",code[16]="";
printf("数据:");
scanf("%s", data);
printf("表达式:");
scanf("%s", bds);
CRC(code,data,bds);
printf("编码:%s",code);
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
“瑾瑜”是什么意思?
IDEA(人民广场店)地址在哪,我要去那里办事,
大家有曾经想放弃过吗
臭椿和香椿能嫁接吗
求落难天使的,给深爱的你,肖展庭和汪子璇实
金元两个字合在一起读什么
天然奇石原石图片最新的有哪些?
红楼国通快递安达分公司地址在什么地方,我要
水星射手8宫,他还爱我么?土星天秤1宫,他当
3台磨粉机4小时可以加工2640千克,照这样计算
怎样将安卓端的ll数据转移ios上
金潮街地址有知道的么?有点事想过去
发琦造型Salon(人民广场万豪店)地址在什么地
中铁物流集团(孺子牛路)地址好找么,我有些事
山里的枞菌有毒吗
推荐资讯
陆风x7是什么品牌
韩菲诗深海胶原系列,葡萄籽靓系列,紫苏美肌系
中国信合(余华信用社)地址在什么地方,我要处
济南到邹城高速公路过路费多钱?
惠普笔记本CQ40-514配置
亲。求一些英语或者韩语 日语的节奏比较强的
高速区间测速100平均跑了110这样算违章吗?
河北省唐山市滦县东安各庄镇樊各庄中学地址在
求九年十四班运动会口号,是喊的那种,不是解
冬季驾驶员驾驶车辆应采取哪些安全措施
32.05缩小到百分之一是多少
无水蒸桶 与有水蒸桶哪个好
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?