1
私は現在仮想CPU用のエミュレータを作成中です。 CPUには、符号付きバイトまたは8ビット浮動小数点を表す16個の8ビット・レジスタがあります。8ビット浮動小数点表記の変換方法/変換方法は?
SByteとFByteの両方に、バイトメンバー変数が含まれています。
私は現在、以下のものを使用してバイトの浮動の実際の値を取得する方法を働いてきた:
FByte = SEEEEMMM
value = (-1)^S + 1.M^(E-7)
S = Sign bit
M = Mantissa
E = Exponent
どのように私は行くだろうが(フロート表現に指定されたdouble値(例えば-3.562)に変換SEEEEMMMとして)。
ありがとうございます!
EDIT:私は現在、理論でこれを行う方法を知っています。ベース2の科学記法とバイナリ表現で記述しますが、私のプログラムではString操作を使用する必要があります。それの。
文字列*をどのように取得するのか、コードを書く上で実際にどのような問題があるのかわかりません。 – EJP
私は自分の電話機にいるので今説明するのは難しいですが、書かれた紙の方法のために私はこれを教えてくれました。つまり10進数から2進数に変換しています。 3.25 - > +11.01(これを他のデータ型で表現する方法がわからなかったので、My String intermediary)、浮動小数点をシフトして浮動バイトフォーマットに変換します。 –