OSDN Git Service

initial files
[iptd/iPTd_R3.git] / src / ry0 / device / PT3 / _Code / Prefix / Prefix_Bit.h
1 #ifndef _Prefix_Bit_H
2 #define _Prefix_Bit_H
3
4 #define BIT_1(                                                    b0)   static_cast<uint32>((b0 )<< 0                                                            )
5 #define BIT_2(                                                 b1,b0)   static_cast<uint32>((b1 )<< 1 | BIT_1 (                                               b0))
6 #define BIT_3(                                              b2,b1,b0)   static_cast<uint32>((b2 )<< 2 | BIT_2 (                                            b1,b0))
7 #define BIT_4(                                           b3,b2,b1,b0)   static_cast<uint32>((b3 )<< 3 | BIT_3 (                                         b2,b1,b0))
8 #define BIT_5(                                        b4,b3,b2,b1,b0)   static_cast<uint32>((b4 )<< 4 | BIT_4 (                                      b3,b2,b1,b0))
9 #define BIT_6(                                     b5,b4,b3,b2,b1,b0)   static_cast<uint32>((b5 )<< 5 | BIT_5 (                                   b4,b3,b2,b1,b0))
10 #define BIT_7(                                  b6,b5,b4,b3,b2,b1,b0)   static_cast<uint32>((b6 )<< 6 | BIT_6 (                                b5,b4,b3,b2,b1,b0))
11 #define BIT_8(                               b7,b6,b5,b4,b3,b2,b1,b0)   static_cast<uint32>((b7 )<< 7 | BIT_7 (                             b6,b5,b4,b3,b2,b1,b0))
12 #define BIT_9(                            b8,b7,b6,b5,b4,b3,b2,b1,b0)   static_cast<uint32>((b8 )<< 8 | BIT_8 (                          b7,b6,b5,b4,b3,b2,b1,b0))
13 #define BIT_10(                        b9,b8,b7,b6,b5,b4,b3,b2,b1,b0)   static_cast<uint32>((b9 )<< 9 | BIT_9 (                       b8,b7,b6,b5,b4,b3,b2,b1,b0))
14 #define BIT_11(                    b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0)   static_cast<uint32>((b10)<<10 | BIT_10(                    b9,b8,b7,b6,b5,b4,b3,b2,b1,b0))
15 #define BIT_12(                b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0)   static_cast<uint32>((b11)<<11 | BIT_11(                b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0))
16 #define BIT_13(            b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0)   static_cast<uint32>((b12)<<12 | BIT_12(            b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0))
17 #define BIT_14(        b13,b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0)   static_cast<uint32>((b13)<<13 | BIT_13(        b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0))
18 #define BIT_15(    b14,b13,b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0)   static_cast<uint32>((b14)<<14 | BIT_14(    b13,b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0))
19 #define BIT_16(b15,b14,b13,b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0)   static_cast<uint32>((b15)<<15 | BIT_15(b14,b13,b12,b11,b10,b9,b8,b7,b6,b5,b4,b3,b2,b1,b0))
20
21 #define BIT_SHIFT_MASK(value, shift, mask) (((value) >> (shift)) & ((1<<(mask))-1))
22
23 #endif