in

TimberLandChapel.com Community Stage

技術者はたゆまぬ努力と一瞬のひらめき。。。
TimberLandChapel は日々研鑽する技術者をサポートします。DevPartner U.G. を立ち上げました。(2007.08.20)

タグによる閲覧

  • 【VB6.0 Tips】CDec という魔法のおまじない(3)

    ちょっと長めの検証コードです。 IDEとコンパイル済みEXEで結果が異なる場合が出てきます。 Select文の評価も当然ゆれてきます。 コンパイルオプション(ネイティブ/P-CODE)の差でもゆれちゃいます。 乗算を優先したってゆれちゃいます。 とにもかくにもゆれまくりです。。。 Private Sub Test() Dim dblWrka As Double Dim dblWrkb As Double Dim dblWrkc As Double Dim dblWrk1 As Double Dim dblWrk2 As Double Dim Buff1 As String Dim Buff2 As...
    投稿場所: TimberLandChapelのTech Blog (Weblog) 投稿者: timberlandchapel 投稿日時: 2005-08-14
  • 【VB6.0 Tips】CDec という魔法のおまじない(2)

    計算結果が不安定になるよい例ですね。 浮動小数点の特性を知るにはこういうのがよいかな? と思います。 これを実行すると, 結果が「3」と出る場合と「2」と出る場合とが混在してきます。 IDE上でやってみたり, EXEにコンパイルしてやってみたりと実行回数を重ねればてんでたいへんなことになります。 まぁ,浮動小数は概数なんだよ。 というのは当然として,概数の丸めってこんなに不安定でいいのか? と思うところではありますが, メインフレームのXDとかはもっと丸めの評価自体が安定しているのですよね。 基本的には乗算を優先して,除算を後回しにする。というのも効果的ですが。 最終的には固定小数点を使って,尚且つ計算手順を工夫して除算を排除する...
    投稿場所: TimberLandChapelのTech Blog (Weblog) 投稿者: timberlandchapel 投稿日時: 2005-08-14
  • 【VB6.0 Tips】CDec という魔法のおまじない

    VB6.0に限らず,IEEE基準に従うfloatデータ型はそれ自体が既に概数です。 浮動小数点数は全ての小数を表現できないからです。 浮動小数点演算をレジスタ移動が頻発するようにコーディングしてしまうと (具体的には演算途中のデータをfloat型変数に代入を繰り返す) それだけで何度もの丸めが生じてしまい,ある意味誤差が広がることになってしまいます。 これに対応するために, ・そもそもfloatを利用しないでCurrencyを利用する ・floatを利用する場合は計算式をCDec()でDecimalキャストする ・途中計算結果を変数代入しないで一気に計算する とすると,レジスタ移動による丸め極力排除することができます...
    投稿場所: TimberLandChapelのTech Blog (Weblog) 投稿者: timberlandchapel 投稿日時: 2005-08-14
  • SQL Server 2005 もいいけど,現状の DTS も固めておきたい。

    DTS 2005 はすばらしい! でも,だからといってすべての環境がいっきに 2005 になるわけではないやん。 ごもっとも。 でもご安心を。 DTS 2000 だってかなりの潜在能力を持っているんです。 少々インターフェイスがとっつきにくいのと, 動的プロパティやスクリプトを組み合わせないと,ループなどの制御構造が実現できませんが, 実現できるシナリオは,さほど DTS 2005 に劣っているとも思えません。 DTS 2005 でできることを見て,いろいろとやりたいことが膨らんでいる方に, DTS 2000 での Tips を提供することも計画しています。 しかし, TLC が書くのを待っていられないよ...
    投稿場所: TimberLandChapelのTech Blog (Weblog) 投稿者: timberlandchapel 投稿日時: 2004-10-27
  • シマンテック社のBloodHoundテクノロジとかち合ってしまった。。。

    シマンテック社のBloodHoundテクノロジは,未知のウィルスにいち早く対応するために,疑わしい動作をするコードを発見するように仕組まれています。 BloodHoundの1カテゴリにExcelMacroがあって,オカシナ挙動をするVBAコードを書いてしまうと,未知のウィルスとして認識されてしまいます。 BloodHoundが動作する1パターンとして, ".bas",".frm",".cls",".vbs"などそれっぽい拡張子でファイルIOを行う VBproject.VBComponents.Importを使用する VBproject.VBComponents.Exportを使用する この3つの要素をもつコードがExcelに含まれていると...
    投稿場所: TimberLandChapelのTech Blog (Weblog) 投稿者: timberlandchapel 投稿日時: 2004-07-18
ページ 1 / 1 (5 アイテム)
Powered by Community Server (Non-Commercial Edition), by Telligent Systems