推广 热搜:
 |  行业设备  |  机械制造  |  机器视觉  |  机械自动化  |  仪器仪表  |  工业机器人  |  编程开发  |  嵌入式  |  电子技术  |  工控自动化  |  电工电气 频道

C语言16位拆成高低八位,和高低八位合成16位数据

   日期:2018-05-30     浏览:123    评论:0    
核心提示:#include stdio.h #include stdlib.h char right,left,temp;//right表示第八位,left表示高八位 int size_right,size_left,size_temp; short int number,size_number; shor
#include <stdio.h>
#include <stdlib.h>
char right,left,temp;//right表示第八位,left表示高八位
int size_right,size_left,size_temp;
short int number,size_number;
short int number_two,number_three;
//int 是四个字节 short int 是两个字节
int main()
{
    number =32343; //65536个数范围是 -32768-32767
    size_number = sizeof(number);
    size_right = sizeof(right);
    size_left = sizeof(left);
    size_temp = sizeof(temp);
    printf("size_number=%d个字节\n",size_number);
    printf("size_left=%d个字节\n",size_left);
    printf("size_right=%d个字节\n",size_right);
    printf("size_temp=%d个字节\n",temp);
    printf("number=%d\n",number);
    right = number&0xFF;//低八位
    left = number>>8;//高八位
    printf("right = %d\n",right);
    printf("left  = %d\n",left);
    printf("number_two=%d\n",left*256+right);
    //前取高八位,在取低八位
    left=(number>>8)&0xFF; //先取高八位
    right=number&0xFF;     //再取第八位
    printf("number_two=%d\n",left*256+right);
    //现在要把高八位和第八位合并
    number_three=left;
    number_three<<=8;
    number_three|=right;
    printf("number_three=%d",number_three);
    return 0;
}
 
打赏
 
更多>同类 嵌入式
0相关评论

推荐图文
推荐 嵌入式
点击排行

网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报