$a= 'BDCCCCCD';
$v = hexdec($a);
$hex_two = base_convert($a,16,2);
$hex_all = "";
if(strlen($hex_two)%2==0){
$hex_all = $hex_two;
}else{
$hex_all = "0".$hex_two;
}
$_pre = substr($hex_all, 0, 1);
echo $_pre."<br>";
$x = ($v & ((1 << 23) - 1)) + (1 << 23) * ($v >> 31 | 1);
$exp = ($v >> 23 & 0xFF) - 127;
$res = $x * pow(2, $exp - 23);
# 判断首位符号位
if($_pre == 1){
$res = -$res;
}
echo $res;