- PR -

計算結果があわないです。

投稿者投稿内容
未記入
会議室デビュー日: 2007/02/08
投稿数: 4
投稿日時: 2007-02-08 12:39
2進数講座になるのかな?

浮動小数での小数点以下は次のようになります。
※コンピュータ内部の数字は2の階乗

2のマイナス1乗 0.5
2のマイナス2乗 0.25
2のマイナス3乗 0.125
2のマイナス4乗 0.0625
 ・
 ・
 ・
以下続く

この数値の組み合わせで階乗の組み合わせにマッチしないものは
近似値しか出せないわけです。
NAO
ぬし
会議室デビュー日: 2001/10/24
投稿数: 1256
お住まい・勤務地: 神奈川のはずれから東京の下町
投稿日時: 2007-02-08 12:41
引用:

Edossonさんの書き込み (2007-02-08 12:02) より:
引用:

NAOさんの書き込み (2007-02-08 11:29) より:

要するに抜本的な所を教えないからでしょうね。
CPUの世界というかビットというかデジタルというか電圧の世界では
0か1しか無いって事を教えてないから

こういう質問が上がってくるんでしょうね。 


私のことですか? σ(・・)
お手数をおかけしますが、具体的に指摘して頂けましたら、ありがたいであります。


いやいや…スレ主に対してです 

#先日呑み会で話題になった事なんですが、
#今時の人は手で2進数を数えるとかやらないのだろうか…
#というか電気工学科卒でSEやってる人間からすると
#そう言った事を教えないのは至極不思議なんですけど。
Edosson
ぬし
会議室デビュー日: 2004/04/30
投稿数: 675
投稿日時: 2007-02-08 12:53
>杏仁豆腐(旧MechanicalLifeさん

私もCOBOLのことはようしらんのですが、
COBOLは、内部では最初から、2進化10進表現で、数値を扱っているみたいですね。
これなら丸め誤差は生じませんね。

>NAOさん
私も、「『丸め誤差』が生じる」ってのは習ったり読んだりしたけど、
その仕組みまでは、そのような覚えがないような。(-.-;
基数変換とかシフト演算とか知ってたら、自分で導き出せるでしょうけど。

#今時の人は手で2進数を数えるとかやらないのだろうか…

筆算で、下向きにわり算をやっていくって方法がありましたね。
商に対して、余りを1個多くしちゃう人がいるんですよ。w

<追記>
なんか脱線している? すみません。

[ メッセージ編集済み 編集者: Edosson 編集日時 2007-02-08 12:54 ]
nagise
ぬし
会議室デビュー日: 2006/05/19
投稿数: 1141
投稿日時: 2007-02-08 13:50
COBOLはパック10進法なのかな。

一応、情報処理試験でこういうところは出題範囲なのですが、
配点比率が低いから知らなくても受かりますし、
所詮はマークシートでの問題なのでさらっとしか触れない感じ。
(私が持っているのは旧1種ですが…)

自分のときは高校の数学でわずかながら2進数があったように記憶しています。
電子工学科いってたのでAND、OR、NOTゲートでビット演算する方法ぐらいは
学びましたが、他学科の人だとそういう物理的なコンピュータの仕組みは
学ぶ機会もないのかもしれませんね。

Javaの場合、ビット演算は可能ですが、使用する機会が少ないように思います。
特定フォーマットに従ったファイルIOを手書きするなどのケース以外では稀では?
Cとかアセンブラやってたときはよく使ったものですが。
フラグをORしてパラメータに渡すような仕様のメソッドとか
Javaだとまず見かけないですよね…。
だんだん2進数から遠ざかっているのかな、と思います。
なちゃ
ぬし
会議室デビュー日: 2003/06/11
投稿数: 872
投稿日時: 2007-02-08 14:23
引用:

あしゅさんの書き込み (2007-02-08 10:52) より:

浮動小数点演算はそんなものです。
十進数による結果を期待したい場合はjava.math.BigDecimalを使いましょう。


きわめてどうでもいい話ですが、java.math.BigDecimalは浮動小数点です。
ええもちろんニュアンスは分かっておりますが。
さる
ぬし
会議室デビュー日: 2005/07/14
投稿数: 276
お住まい・勤務地: 実家戻ったw
投稿日時: 2007-02-08 14:26
2進数?
小学校でも中学校でも高校でも習いましたが・・・
うちらの下からカリキュラムが変わったんだよなぁ〜。
センター試験で苦労したorz
(はい、ごめんなさい、脱線です。)
こぶ
会議室デビュー日: 2006/11/14
投稿数: 11
投稿日時: 2007-02-08 18:18
多数のお返事ありがとうございました。
私の勉強不足を痛感いたしました。
2進数については勉強はしていたのですが
浮動小数点については無知の状態でした。

....double(浮動小数点)について
勉強してみます。m(__)m

ありがとうございました。
Kissinger
ぬし
会議室デビュー日: 2002/04/30
投稿数: 428
お住まい・勤務地: 愛知県
投稿日時: 2007-02-08 18:42
解決したようですが、

IEEE 754, 854あたりを読んでみると良いですよ。
CQ出版のインターフェース誌(80年代中ごろだったか)に IEEE 754の詳しい解説記事が特集されています。(もう売ってないと思うので、会社の図書室とか探してみてはどうでしょう)

スキルアップ/キャリアアップ(JOB@IT)