none
バイトデータの変換 RRS feed

  • 質問

  • いつもお世話になってます。
    WinXP Sp3、VB2008Expの環境で以下の内容で困っています。

    あるファイルデータをバイナリ形式で開いてバイト型配列に入れます。
    バイト型配列内は

        Byte(0)=H& 33
        Byte(1)=H& 33
        Byte(2)=H& CA
        Byte(3)=H& 42

    と入ってきます。ココまではOKなのですが
    これを浮動小数IEEE方式で『101.1』へと変換したいのですが
    どうしたら良いのでしょうか?

    調べていたら、あるサイトで
    浮動小数の変換で行う?という事がなんとなくわかりましたので試しに

    『42CA3333』⇒『0100 0010 1100 1010 0011 0011 0011 0011』

    1Bit目が『0』なので『+』
    2Bit~9Bit『1000 0101』なので『133』この事から133-127=6 つまり2の6乗⇒64

    10Bit~32Bit『100 1010 0011 0011 0011 0011』=4862771?
    10Bit~32Bit『100 1010 0011 0011 0011 0011』=0.65625?

    どちらも違うと思いまして行き詰りました。

    そもそも上記のバイト型配列のデータを小数表示させる関数って無いのでしょうか?
    また、16進から小数を求める方法の間違いはドコになるのでしょうか?

    よろしくお願いします。



    2009年3月15日 5:38

回答

すべての返信