• ベストアンサー

計算機について

10の80乗の計算は8ビット16ビット計算機で計算でどのようにしてできますか??

質問者が選んだベストアンサー

  • ベストアンサー
  • elmclose
  • ベストアンサー率31% (353/1104)
回答No.2

10の80乗ということは、大体2の267乗前後ですから、2進数で表現すれば、267ビット程度になります。つまり272ビット(=8x34)のメモリがあれば、その計算の途中経過や結果を格納することができます。そして、例えば、その計算機(CPU)に8ビット正数同士の乗算の命令がある場合、その命令を使って、8ビット区切りで乗算を行なう(桁の繰上げも行なう)ことができますので、272ビット掛ける8ビットの乗算が行なえます。このような乗算を80回程度繰り返せば、所望の計算結果が得られます。 もし、その計算機(CPU)に2進化10進(BCD, Binary Coded Decimal)の乗算命令があれば、それを使っても良いです。この場合も、乗算命令の対象の桁数に限りがあれば、上記のように所定の桁数で分割して乗算する方法を使えます。 もし、計算機を使うことにこだわらなければ、紙上で非常に用意に10の80乗の計算結果を10進数で書くことは可能です。 不明な点があれば、補足を書いてください。

himi115
質問者

お礼

10の80乗だと、8ビットや16ビットでは全然足りないのでどうしたらいいかわかりませんでしたが、分割して行うんですね!!わかりやすい回答ありがとうございました。

その他の回答 (1)

  • liar_adan
  • ベストアンサー率48% (730/1515)
回答No.1

やりかたは複数あります。 8ビット、16ビット計算機といっても、 「その機械で扱いやすいビット数が8ビット(16ビット)である」 というだけで、多少の処理をすれば何ビットの数の計算でもできます。 我々が使っているPCの大部分は32ビットですが、64ビットの整数を扱うこともできます。 方法は、 ・何バイトか使って、10進法の位取りのように「256進法nケタ」で表す方法。 ・何バイトか一塊に使って、浮動小数点で表す方法。 ・10進数の1ケタ分を4ビット、あるいは1バイトに格納して、10進数のままで計算する方法。 などです。 どの方法にも利点・欠点があり、(たとえば正確な値が必要なら浮動小数点は使えないなど)、 事情に応じて選びます。

himi115
質問者

お礼

ありがとうございます。 方法がたくさんあるのですね!!参考にさせていただきます。