8ビット16進数の動作は、フローティングに変換しました

。1の#include <stdio.hに>
 2の#include <stdlib.h>に含ま
 。3  // ******************************* ************** // 
4。 // ****名:出力回転の8進浮動小数点数*** // 5 // ****の長さ: 32 *** // 6。 // ****式:Xの[真値] =((-1)^ S)1.M *(2 ^ E)*** // 7 // **時間**:2019年10月24日*** // 8 // ********************************* ************* // 。9 10 11 の#define NUMBER_SIGN。1つの // シンボルの数 12である の#define FRAME_SHIFT 8。 // フレームシフト 13で の#define 32 CODING // エンコーダ 14 の#define 23 DIDITAL_CODINGである// DVD 15 16 フロート HextoFloat(符号無し整数進) 17 { 18は INT I = 1 ; //は、2 ^ n個を提供 図19 の符号なし整数 iHex =(16進<< NUMBER_SIGN); 20れる 符号なし整数 decimal_bin = 0 ; 21は、 符号なし整数= dacade 0 ; 22である 値、 23は ダブル 小数 = 0 ; 24 INT S =(16進>>(CODING - NUMBER_SIGN)); // シンボル数 25 INT E =(iHex >>(NUMBER_SIGN + DIDITAL_CODING)) - 127// インデックス 26である IF(E> 0 ){ 27 dacade =((iHex << FRAME_SHIFT)>>(コード- E))+(I << E); // 整数、IEEE754標準 28 decimal_bin =((iHex < <(FRAME_SHIFT + E))>>(NUMBER_SIGN FRAME_SHIFT + E +)); // 小数バイナリ前処理 29 } 30 IF(E <= 0 ){ 31れる decimal_bin =(iHex << FRAME_SHIFT)>>(FRAME_SHIFT NUMBER_SIGN +)+(I <<(+ DIDITAL_CODING 1。 )); // 分数バイナリプリ整数ビットが0である、IEEE754規格 32 } 33は =(I <<(DIDITAL_CODING -値E))、 34は 小数 = ダブル(decimal_bin /値); // 小数 35 リターン S == 0ダブル(dacade + 小数):ダブル(( - 1)* (+ dacadeの小数)); 36 } 37 のint main()の 38 { 39 の符号なしのint A = 0x80102000 40 の符号なし整数 B = 0x41360000 41 の符号なし整数 C = 0x41A4C000 42 の符号なし整数 E = 0x00000000の43 の符号なし整数を D = 0×80000000 ; 44 の符号なし整数 F = 0xFFFFFFFFの; 45 の符号なし整数 G =0x7FFFFFFFで46である のprintf(":X%のフロート8F%\ N- \ N-16進数" ;、A、HextoFloat(A)) 47 のprintf(" X%のフロート:%進数.8f(教科書)\ N- "B、HextoFloat(B)); 48 のprintf(" 進数:%X浮動小数点:%の8F(教科書)\ N- " 、C、HextoFloat(C))。 49 のprintf(" 進数:X%のフロート:%の8F(最大負)\ N-。" 、D、HextoFloat(D)); 50 のprintf(" 進数:8Xフロート%:% .8f(最小の正の数)\ N- " ; Eは、HextoFloat(E)) 51である (printfの" \ N-%の1F(負の最小値:%Xのフロート16進数)、F、HextoFloat(F)); 52である のprintf(" 16進数:%X浮動小数点:%の1F(最大整数)\ N- " 、G、HextoFloat(G)); 53である システム(" PAUSE " ) 、 54である 戻り 0 ; 55 }

8ビット16進数の動作は、フローティングに変換しました

操作が多少異なるマシン上部偏差であってもよいことに留意されたいです

2.フォローIEEE547標準

3.2 ^ n個のビットが両方迅速に計算することができます

4. vs2019で正常にテストされています

おすすめ

転載: www.cnblogs.com/threelittlepig/p/11735122.html