質問

私は、8進数、16進数、2進数、そしてもちろん10進数で小数点を超えて計算を実行できる計算機に取り組んでいます。浮動小数点の10進数を浮動小数点の16進数、8進数、2進数、またはその逆に変換する方法を見つけるのに苦労しています。

計画では、すべての計算を10進数で行い、結果を適切な数値システムに変換します。任意の助け、アイデアや例がいただければ幸いです。

ありがとう!

役に立ちましたか?

解決

うーん...これは my 大学のCS <!> quot; weed-out <!> quot;の宿題でした。コース。

バイナリの操作は、Seymour Lipschutzによる Schaumのアウトラインシリーズ:Essential Computer Mathematics で説明されています。なんらかの理由で、23年後も本棚に残っています。

ヒントとして、8進数と16進数をバイナリに変換し、操作を実行して、バイナリに戻します。

または、10進数演算を実行し、その後で8進数/ 16進数/ 2進数への変換を実行できます。このプロセスは、すべての位置番号システムの算術演算で基本的に同じです。

他のヒント

使用しているプログラミング言語は何ですか? すべてをバイナリに変更し、バイナリで数学を実行してから元に戻すことをお勧めします。 (unsigneD)2進数に2を掛けると、tiは左ビットシフト(<!> lt; <!> lt; Cの1)と同じであり、2による除算は右ビットshitと同じです( <!> gt; <!> gt; in C)。 加算と減算は、小学校で行うのと同じです。

また、floatをintとしてキャストすると、int(10.5)= 10;が切り捨てられることを忘れないでください

数日前に同じ問題が発生しました。 http://www.binaryconvert.com を見つけました。これにより、浮動小数点10進数、2進数、 8進数、16進数の任意の順序で。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top