首页 > 解决方案 > 如何将带有 unsigned char 的 2 个字节拆分为 5 位、5 位和 6 位,并为它们分配不同的功能?

问题描述

对于我一直在做的事情,如何将 2 个字节拆分为我选择的不同位?

标签: c

解决方案


我建议与工会合作:

typedef union tagMyType
{
    struct
    {
        unsigned Part1    :5;
        unsigned Part2    :5;
        unsigned Part3    :6;
    };
    struct
    {
        unsigned char  Byte1;
        unsigned char  Byte2;
    };
}MyTypeT;


....
MyTypeT   A;
A.Byte1 = 0x01;    
A.Byte2 = 0x02;
A.Part1 .......  // 5 Bits and so on...

推荐阅读