黄金会员
主题
回帖0
积分5089
阅读权限40
注册时间2008-12-13
最后登录1970-1-1
在线时间 小时
|
本帖最后由 desertsailor 于 2014-5-27 21:35 编辑 6 E* m( U0 G: _; v" J0 d9 A
. Z/ Y% {7 _" V# z' E4 d
想了一下,查表可以这样:5 h. V) i* Y3 H
; t0 ]; y) H9 a8 \3 P ?unsigned char Tab[16]={0x00,0x08,0x04,0x0C,0x02,0x0A,0x06,0x0E,0x01,0x09,0x05,0x0D,0x03,0x0B,0x07,0x0F}; //四位数据的反转,分别对应0-15的反转后的数据
' i/ d" L, W- g3 @7 \' @: g+ c; o1 k
//8位数据的反转' U% {) }$ R& @; f
unsigned char Reverse_8Bits(unsigned char Data) o! m9 _. d+ s
{! t" U S9 N `- U! e" Y6 I, x
unsigned char temp;
+ D# w% C+ s$ S4 B0 d4 ~ temp=(Tab[Data&0x0f]<<4) | Tab[Data>>4];
! f8 Q2 _) _/ P2 U return temp;& v+ r& v G: ~) ~3 Z
}
# e0 s4 o" Q6 O( X3 Q6 T* `* a1 g8 a0 H* d Z& j& J4 H9 ]
. F1 H- L5 f/ _0 O1 A" f. l//16位数据的反转
) `4 z% B8 d, E7 {) I: I t/ q) J% ~unsigned int Reverse_16Bits(unsigned int Data)
L. W1 A6 ]& \' b% f8 b{
( J/ p4 M h. f, l! H unsigned int temp;& M+ Y5 F& v6 x j
temp=(Reverse_8Bits((unsigned char)(Data&0x00FF))<<8) | Reverse_8Bits((unsigned char)(Data>>8));
1 |9 R- g l' M6 H8 l% g return temp;! e9 V6 e& e- g9 l3 q
} |
|