黄金会员
主题
帖子
积分5089
阅读权限40
注册时间2008-12-13
最后登录1970-1-1
在线时间 小时
|
本帖最后由 desertsailor 于 2014-5-27 21:35 编辑 ! E3 i3 R3 u9 Y! N: Y% L; i3 f3 E
4 L) O; l& @* L9 ]) J( W7 W5 v8 Q
想了一下,查表可以这样:9 ?) F: v! X" [2 r( @% C" g
?- W+ M3 R$ [- X5 P1 Gunsigned char Tab[16]={0x00,0x08,0x04,0x0C,0x02,0x0A,0x06,0x0E,0x01,0x09,0x05,0x0D,0x03,0x0B,0x07,0x0F}; //四位数据的反转,分别对应0-15的反转后的数据: ~( d( |, |, x. M
5 u: A w* ]* }; ?4 M# D, X$ V//8位数据的反转
' n. h7 ^+ |! k5 Z3 X5 Bunsigned char Reverse_8Bits(unsigned char Data)
% q6 ]. z ?3 S b# N( S7 [- {6 K{1 b6 _4 }* l9 j# Z5 Z
unsigned char temp;5 A) Q' y' ]) ]" ^( E- ^) A
temp=(Tab[Data&0x0f]<<4) | Tab[Data>>4];, W0 S# {7 }8 ?8 V
return temp;
/ u+ e8 ]# a. @+ \7 W}# v$ s9 P J5 b8 ]9 F7 H
7 x* n9 e* b4 n' L/ E0 A4 k
2 m" n: n: z3 ], U//16位数据的反转
4 }( _2 w9 T& n- Vunsigned int Reverse_16Bits(unsigned int Data)
1 s; K6 t0 U( c6 Q+ J{( g, {7 K& A6 I0 Z* |* @
unsigned int temp;' l# v+ t/ l4 }, g
temp=(Reverse_8Bits((unsigned char)(Data&0x00FF))<<8) | Reverse_8Bits((unsigned char)(Data>>8));8 T( ^8 ?" ^3 A. {4 ]/ T
return temp;
3 Z, }0 C5 U/ p} |
|