アカウント名:
パスワード:
リアルタイム信号処理のプログラム書きますが、立ち上がってすぐは入力データが用意されていないでクリアしたバッファの初期値で演算(たとえばパイプラインADCとか使っていて入力に遅延がある)なんてことは普通にあり得るので、アルゴリズム中に割り算があるとき(正規化とかAGCとか)では 0割が発生しないように 除数がゼロかどうかあらかじめチェックします。そして、結果を後段アルゴリズムの制約上問題ない値とします。例外なんて起こさない方がいいし、誰か書いていましたがそんな機構は無い場合もあるしで予測される例外は基本的に排除(生起しないように手を打つ)すべきです。データが用意されるまで待てばいいんだけどね。演算側の水際でも処置しておかないと安心できないつーか、後段の用途によって0割の結果値を吟味するのって普通だと思いますが(0で駄目なら非0の微小値とかそもそものアルゴリズムをスキップするとか)そういうこと考えないでプログラム書いてるんですかね。
>チェックに疲れ果てたベテランプログラマー本来やりたいことからすれば、余計な処理と言えるわけで。。必要なのは分かってるが、堅牢にしようとすればチェック処理の方が多くなるのはもやっとしません?
>必要なのは分かってるが、堅牢にしようとすればチェック処理の方が多くなるのはもやっとしません?
堅牢なことは至上命題で大前提だと思いますよ。高速化とかエレガントなアルゴリズムとかは、その後についてくると思ってます。だから、殆どもやっとはしないです、個人的には。まぁ、この手のチェックや回避策の処理自体をミドルウェアや言語系でやってくれると助かるんですけどね。
至上命題ってどういう意味ですか?ぐぐっても分かりませんでした。
あれま…「至上」の「命題」って事です。要は、最優先事項とかそういう意味です。
命題に至上もなにもありませんよ。命題とは、真偽の判断に使う文章でしかありません。←これが命題ひょっとして至上命令ですか?
社会人にとっては業界用語みたいなものだから、辞書に載っていないので間違いと言い切れるものでもないのでは。適切な用語がないから新語が生まれてくる。
実社会では何事も正/誤で割り切れないことも多いものなのです。
いや誤だろ自分の無知をひけらかすことになるんだから、今指摘されててよかったんじゃねーの
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
UNIXはただ死んだだけでなく、本当にひどい臭いを放ち始めている -- あるソフトウェアエンジニア
割り算させない (スコア:5, 参考になる)
リアルタイム信号処理のプログラム書きますが、
立ち上がってすぐは入力データが用意されていないでクリアしたバッファの初期値で演算
(たとえばパイプラインADCとか使っていて入力に遅延がある)
なんてことは普通にあり得るので、アルゴリズム中に割り算があるとき
(正規化とかAGCとか)では 0割が発生しないように 除数がゼロかどうか
あらかじめチェックします。そして、結果を後段アルゴリズムの制約上問題ない値とします。
例外なんて起こさない方がいいし、誰か書いていましたがそんな機構は無い場合もあるしで
予測される例外は基本的に排除(生起しないように手を打つ)すべきです。
データが用意されるまで待てばいいんだけどね。
演算側の水際でも処置しておかないと安心できない
つーか、後段の用途によって0割の結果値を吟味するのって普通だと思いますが
(0で駄目なら非0の微小値とかそもそものアルゴリズムをスキップするとか)
そういうこと考えないでプログラム書いてるんですかね。
Re: (スコア:0)
>チェックに疲れ果てたベテランプログラマー
本来やりたいことからすれば、余計な処理と言えるわけで。。
必要なのは分かってるが、堅牢にしようとすればチェック処理の方が多くなるのはもやっとしません?
Re: (スコア:1)
>必要なのは分かってるが、堅牢にしようとすればチェック処理の方が多くなるのはもやっとしません?
堅牢なことは至上命題で大前提だと思いますよ。高速化とかエレガントなアルゴリズムとかは、その後についてくると思ってます。
だから、殆どもやっとはしないです、個人的には。
まぁ、この手のチェックや回避策の処理自体をミドルウェアや言語系でやってくれると助かるんですけどね。
Re: (スコア:0)
至上命題ってどういう意味ですか?
ぐぐっても分かりませんでした。
Re: (スコア:1)
あれま…
「至上」の「命題」って事です。
要は、最優先事項とかそういう意味です。
Re: (スコア:0)
命題に至上もなにもありませんよ。
命題とは、真偽の判断に使う文章でしかありません。←これが命題
ひょっとして至上命令ですか?
Re: (スコア:0)
社会人にとっては業界用語みたいなものだから、
辞書に載っていないので間違いと言い切れるものでもないのでは。
適切な用語がないから新語が生まれてくる。
実社会では何事も正/誤で割り切れないことも多いものなのです。
Re:割り算させない (スコア:0)
いや誤だろ
自分の無知をひけらかすことになるんだから、今指摘されててよかったんじゃねーの