winnie 发表于 2009-3-31 14:55:44

PICC

picc如何实现 mpasm中的 HIGH 和 LOW?
如何取出 int 类型数据中的高字节和低字节送给unsigned char 变量? 〉〉,&, (类型转换)?

winnie 发表于 2009-3-31 14:56:21

三种方法
//================================================
//int型整数转化为二进制数,即化为两个字节
void inttobin(unsigned int temp)
{//将int型数据转化为两个字节,存入high_tmp,low_tmp
//第一种
high_tmp=(*((unsigned char *)(&temp)+1));
low_tmp=(*((unsigned char *)(&temp)));

//第二种
   high_tmp=(unsigned char)(temp>>8);   //取高8位
   low_tmp=(unsigned char)((temp<<8)>>8); //取低8位
//第三种
    unsigned char i;
    high_tmp=0;   //这一段封起来的程序也可以用来转化,代码要大于上面两行移位操作
    low_tmp=0;
    while(temp>=256)
   {
       temp-=256;
       high_tmp++;
   }
    low_tmp=(unsigned char)temp;   
   }

有更简单的
char_h=intXX>>8;

char_l=intXX

ok

tye?
页: [1]
查看完整版本: PICC