打印

关于bcd转hex

[复制链接]
1853|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
CHUANDAOXY|  楼主 | 2007-3-16 10:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg51.h>
#include<stdio.h>


unsigned int BCDTOHEX(unsigned int bcd_data)
{  
   unsigned  char temp;

   temp=(( bcd_data>>8)*100)|((bcd_data>>4)*10)|(bcd_data&0x0f);

   return temp;
   }

  



  void main (void)
   {
   unsigned char  c;

   unsigned int  b;
    b= 1001;

   c = BCDTOHEX(b);
   }
    编译没问题,执行就出错?

   问题在那呢

    

相关帖子

沙发
wsl_5631| | 2007-3-16 10:34 | 只看该作者

BCD码

b= 1001; 
b 是BCD码???

使用特权

评论回复
板凳
computer00| | 2007-3-16 12:29 | 只看该作者

改成这样:

temp=(((bcd_data>>12)&0xF)*1000)+(((bcd_data>>8)&0xF)*100)+(((bcd_data>>4)&0xF)*10)+(bcd_data&0x0f);





b = 0x1001;

c = BCDTOHEX(b);

使用特权

评论回复
地板
xwj| | 2007-3-16 13:34 | 只看该作者

是啊,LZ都没屏蔽无关位:-)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

843

主题

1029

帖子

4

粉丝