int型整数和BCD码之间的相互转化

来源:互联网 发布:京挑客cms系统 编辑:程序博客网 时间:2024/05/18 11:49

举例说明:假设int型整数为12345678,转化为BCD码后成为了32位的12345678,表示4个字节。

#include<stdio.h>typedef unsigned long u32;u32 inttoBCD(int m){    u32 r=0,n=1;    int a;    while(m)    {        a=m %10;        m=m/10;        r=r+n*a;        a=a<<4;    }     return r;}

举例说明:假设BCD码为32位的12345678,一共四个字节,转化为int型整数后成为了12345678,

#include<stdio.h>typedef unsigned long u32;int BCDtoint(u32 m){   int a=0,b=1;   u32 n;   while(m)   {      n=0xF&m;      m=m>>4;      a=a+b*n;      b=b*10;   }   return a;}
0 0
原创粉丝点击