float unsigned char 类型转换,该如何处理

float unsigned char 类型转换
有一个float类型数据存储在char类型的source数组中  
char source []={31.14};这个数组内存中存储的是 0x33,0x31,0x2e,0x31,0x34
想要转换成unsigned char 进行数据传输,并将其存储成 0x31,0x2e,0x14 可以实现么?能实现的话怎么实现?

如果想从unsigned char 转变回 char型怎么转变?


------解决方案--------------------
0x31,0x2e,0x14
=======================================
这个的0x31和0x14是用BCD码表示
先通过0x33,0x31算出十位的3和个位的1,然后3*16+1=0x31
同理 1*16+4=0x14
最后将0x31,0x2e,0x14放入 unsigned char数组里
注:如果要使用0x31,0x2e,0x14,自己想想怎么区分BCD码和你的点(0x2e)就行了