////////////////////////////////////////////////////////////////////
/*

    KAB-studio.h


    (C)KAB-studio 1999 - 2003 ALL RIGHTS RESERVED.
        http://www.kab-studio.biz/
        info@mail.kab-studio.biz

    送信日： 2003/10/20(Mon) No.228
    配信数： 2750 ( Mag2 + Pubzine )
＊    発行元： まぐまぐ ( URL: http://www.mag2.com/  ID: 0000012198 )
＊    発行元： Pubzine ( URL: http://www.pubzine.com/  ID: 590 )
*/
////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////
/*                ２００３年１０月２０日（月）の更新                */
http://www.kab-studio.biz/index.html

・ほとはー１話追加
　三人合体ホットハーブに１話追加。そういえばみんな名前変だ……。
[ 三人合体ホットハーブ ]
http://www.kab-studio.biz/Comic/HotHerb/index.html

・サーバーダウン！
　１５日の２時３４分から同日２０時４７分までの間、サーバーがダウンし
て、ホームページの閲覧及びメールの受信ができませんでした。
　１８時間もの間サービスを停止してしまい申し訳ありませんでした。今後
こういったことが起きないよう善処致します……って言っても原因よーわか
らんのよ（泣）
[ 障害報告 20031015_0851 ]
http://www.kab-studio.biz/Info/DownRecord/20031015_0851.html


////////////////////////////////////////////////////////////////////
/*                        ちょお普通な日記                        */
http://www.kab-studio.biz/nikki2/index.html

2003/10/12 (Sun)
　ほとはー外伝２のネーム、１６ページしか描けなかった……。下水道と消
防設備点検。表紙壁紙は結局パスします。 UML 勉強会。そんな中で日記を
書く。ファンロードのラポートが倒産……。

2003/10/13 (Mon)
　やっぱりゴールドの方が簡単。Ｎ６４マリオカートを朝まで。んで１時か
ら休出。でも７０％効率ダウン。曜日感覚ぐちゃぐちゃ。新番組パス＆おす
すめ一覧。ディスガイアを借りる。ほとはー外伝２を描く暇がない……。

2003/10/14 (Tue)
　ひさびさ定時上がり。 EJB のデプロイの仕組みがよくわからん。おね２
最終回。悪くはないけど続きが見たい。ほとはーをプリンターで印刷して
ホッチキスどめして売ろうかなぁとか。

2003/10/15 (Wed)
　サーバーダウン。正確にはネットワークが切れてた。年数回ならよし？　
お仕事はソース管理で大変な感じに。ホントにヤバい。神舟の情報が少ない
なぁ。まんがサイエンス２巻＆プラネテス。

2003/10/16 (Thu)
　ヒアリングで仕事進まないし。お客さん面白い。助っ人を追い払う。クロ
現で神舟のやってくれた。そして２ちゃんブラウザ。そしてキャッシュ。そ
して好み。

2003/10/17 (Fri)
　仕事進まないし。明日休出だし。あさってセキュアドだし。ほとはー
外伝２はパスせざるをえないかもしれん。本当に。

2003/10/18 (Sat)
　３時まで起きてほとはー描いて、起きてからかぶヘッダー書いて、午後か
ら休出。お金貯まる。セキュアドを取りたい３つの理由。


////////////////////////////////////////////////////////////////////
/*                         風雅、舞い                             */
http://www.kab-studio.biz/Novel/Fuga/index.html

■　第九章　四人　−５−

「ってなわけだ、文句は言わせねぇぜ」
　地下の朱き泉に、４人が立ち、その先に白葉が向かい合う。白髪は炎で朱
く染まり、その瞳も煌々と猛ている。
「ふん、当然の結果だ」
「……当然？」
「鷹人と穂香が最も優れた者だということは当然のことだ。今日のは単なる
運試しだ」
「はぁ！？」
　言い返したのは穂香だった。
「本気で立ち会えば冗談で済まない怪我があることくらい」
「わかっておるよ。儂とて、不安に駆られることもある、ということじゃ」
「不安？」
「だが、もう泣き言は言わん。なにせ、賭に勝ったのだからな」
　白葉は手を振るう。炎の中に人影が映る。
「これは……」
「麓の町からここへ向かっておる」
　５０人ほどの軍服姿が銃を抱えて行進する。
「とうとう……」
「広島と長崎の有様を見て、藁をも掴む思いだろうなぁ」
　白葉は嫌みな笑みを浮かべる。そして、顔を引き締めてから、穂香を見
る。
「どうすべきかな？」
「……」
　穂香は手を炎にかざし、目を細める。
「……猪道を進んでいる。他の方角からの侵攻はなし。まず戦えない者を蛙
道から逃がす。戦える者は空見ヶ原で待ち伏せする。会敵は恐らく明日早
朝……でも」
「でも？」
「戦力が足りない。村にいる術者の数が少なすぎる」
「作戦次第でなんとかなると思うが」
　鷹人の助言に、穂香は渋い顔をする。

                                                              (続く)


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[KCM]
『サーバーダウン……じゃないんだよね』
「ネットワークが継ながらなかった、っていうのが正しい理由」
『でもやっぱり〈継ながらない〉＝サーバーダウンって考えちゃうかも』
「ちゃんとした設備だと、ネットワークが原因って考えにくいからね」
『そなの？』
「ネットワークは継なげばあとはそのまま。サーバーは動きっぱなし」
『でもさ、 LAN ケーブルがネズミに囓られたとか』
「そういえばそういう話聞くね……」
『足引っかけて抜けちゃったとか』
「ありそうだね……」
『結構ネットワークまわりの方が弱くない？　物理的に』
「確かに……」
http://www.kab-studio.biz/
_______________________________________________________________[KCM]

////////////////////////////////////////////////////////////////////
/*                       #pragma twice                            */
http://www.kab-studio.biz/Programing/PragmaTwice/index.html

　Version 12.05
double の中身・指数部編

「では今回はたぶんかなり難しい、 double の中身について」
『う”〜』
「まず、前回の関数でいくつか試しに出力してみます」

void Use_OutputDoubleBit()
{
    OutputDoubleBit( 1.0 );
    OutputDoubleBit( 0.1 );
    OutputDoubleBit( 0.5 );
}

00111111 11110000 00000000 00000000 00000000 00000000 00000000 
00000000 1.00000000000000000000

00111111 10111001 10011001 10011001 10011001 10011001 10011001 
10011010 0.10000000000000001000

00111111 11100000 00000000 00000000 00000000 00000000 00000000 
00000000 0.50000000000000000000

「入りきらないから改行入れてあるからね」
『一番後ろのが元の値ね。それにしても……なんか法則性全然ないね。
1.0 と 0.1 って似そうなのに全然違う』
「特に 0.1 はね。この辺が誤差が出る理由」
『やっぱり難しそう……』
「だから、ひとつひとつ見ていくね。まず、一番左側のビットについて。こ
れは符号で、プラスだと 0 、マイナスだと 1 になります」

    OutputDoubleBit(  1.0 );
    OutputDoubleBit( -1.0 );

00111111 11110000 00000000 00000000 00000000 00000000 00000000 
00000000 1.00000000000000000000
10111111 11110000 00000000 00000000 00000000 00000000 00000000 
00000000 -1.00000000000000000000

『これはわかりやすいね』
「これはね」
『う”』
「次に double の中で一番シンプルな数、 2.0 について見てみます」

    OutputDoubleBit( 2.0 );

01000000 00000000 00000000 00000000 00000000 00000000 00000000 
00000000 2.00000000000000000000

『うわ、ホントだ。ほとんどゼロ！　でも 2 が一番シンプルってどういう
こと？　かなり変すぎ』
「 2 が一番シンプルなのは、浮動小数点は 2 が基本になってるから。まず
は、この 2.0 を使って指数部について見てみます」
『指数部って、 10 をいくつ掛けるかってゆーのだったよね』
「そう……なんだけど、実際には 10 じゃなくて、 2 なんです」
『 2 ……？』
「上の 2.0 のを例に、指数部の部分を見てみます」

 _______ ____
01000000 00000000 00000000 00000000 00000000 00000000 00000000 
00000000 2.00000000000000000000

「 _ が付いてる部分が指数部。つまり、 2.0 の指数部は」

1000000 0000

「ってこと」
『これが 2 を…… 1 個掛けてるってこと？』
「そう、これが 2 を 1 個掛けてる場合。だから 2.0 。でも……もうひと
つ 2 を掛けて 4.0 の場合はこうなります」

 _______ ____
01000000 00010000 00000000 00000000 00000000 00000000 00000000 
00000000  4.00000000000000000000

『あ、想像と違った……』
「きっとそうだと思った。この場合の指数部は」

1000000 0001

「ってなります。同じく 8.0 の場合は」

 _______ ____
01000000 00100000 00000000 00000000 00000000 00000000 00000000 
00000000  8.00000000000000000000

「 16.0 の場合は」

 _______ ____
01000000 00110000 00000000 00000000 00000000 00000000 00000000 
00000000 16.00000000000000000000

『って、これって int とかと同じ数え方じゃない！』
「そう、まとめると」

1000000 0000 :  2.0
1000000 0001 :  4.0
1000000 0010 :  8.0
1000000 0011 : 16.0

『つまり、 2 を何個掛けるか、が int とかと同じ方法で入ってるわけね』
「だいたい合ってるかな」
『だいたい？』
「最初の 1 はなんだと思う？」
『 int だと、最初の 1 ってマイナスって意味だったよね、でもなんか違う
し……』
「これは、 1.0 、 0.5 、 0.25 を見ればわかると思うよ」

 _______ ____
00111111 11110000 00000000 00000000 00000000 00000000 00000000 
00000000 1.00000000000000000000

 _______ ____
00111111 11100000 00000000 00000000 00000000 00000000 00000000 
00000000 0.50000000000000000000

 _______ ____
00111111 11010000 00000000 00000000 00000000 00000000 00000000 
00000000 0.25000000000000000000

「これをさっきのとまとめると次のようになります」

0111111 1101 :  0.25
0111111 1110 :  0.5
0111111 1111 :  1.0
1000000 0000 :  2.0
1000000 0001 :  4.0
1000000 0010 :  8.0
1000000 0011 : 16.0

『あ、普通に増えてるだけ…… unsigned ってことね。でも……』
「 2.0 を 2 で割ったら？」
『 1.0 ……それを 2 で割ったら 0.5 、 0.5 を 2 で割ったら 0.25 ！』
「そういうこと。もう少し正確に書くと」

...
0111111 1101 :  2 の -2 乗
0111111 1110 :  2 の -1 乗
0111111 1111 :  2 の  0 乗
1000000 0000 :  2 の  1 乗
1000000 0001 :  2 の  2 乗
1000000 0010 :  2 の  3 乗
1000000 0011 :  2 の  4 乗
...

「ってなります」
『そういえば 2 の 0 乗は 1 だったね』
「だから、ビット的に一番大きいのと小さいのを見てみると、こうなりま
す」

0000000 0000 :  2 の -1023 乗
...
0111111 1101 :  2 の -2 乗
0111111 1110 :  2 の -1 乗
0111111 1111 :  2 の  0 乗
1000000 0000 :  2 の  1 乗
1000000 0001 :  2 の  2 乗
1000000 0010 :  2 の  3 乗
1000000 0011 :  2 の  4 乗
...
1111111 1111 :  2 の  1023 乗

『うわ、すごい大きな数……』
「 2 の 1023 乗だと、１０進数で 0 が 300 個強付くくらいの数」
『うわ……』
「だから、浮動小数点なら桁そのものについてはそれほど気にしなくていい
かな」
『 int の比じゃないわね。でも……そういう大きな桁だと、誤差が出ちゃ
うわけよね』
「ううん、今見たように 2 の乗数は絶対に誤差は出ないから」
『あ、そっか、 2 をいくつ掛けるかってだけだから、誤差とか出ないん
だ。それに 0.5 とか 0.25 とか、 2 で割っていく数も誤差は出ないね』
「そういうこと。というわけでまとめ」

・最初のビットはプラス／マイナスのフラグ。

・２番目のビットから１２番目のビットは指数。
　2 の何乗か、を表している。
　unsigned int に近い形式で表現。
　ただし最初から 1023 が足された状態。

・ 2 の乗数の数は誤差が出ない。
　... 0.125 0.25 0.5 1 2 4 8 16 ...

「こんなところかな」
『じゃ、次回は仮数部の話ね！』

/*
    Preview Next Story!
*/
『……なんか今日のだけだとそんな難しくないけど』
「ひとつずつ追っていけばね」
『いっぱい出てくるとわかんなくなる？』
「というより、ビットの並びを頭の中で数値に変換するとかすると」
『げ、それは難しそう』
「特に仮数部の計算は難しいよー」
『げげ！』
「というわけで次回」
＜ Version 12.06 double の中身・仮数部編 ＞
『につづく！』
「って言っても、頭の中で変換、なんてまず必要ないんだけど」
『……勉強する意味ないし』


////////////////////////////////////////////////////////////////////
/*                ２００３年１０月２７日（月）の更新              */
http://www.kab-studio.biz/index.html

・ほとはー１話追加予定
　三人合体ホットハーブに１話追加予定。先週に比べれば余裕あるんで大丈
夫でしょう。


////////////////////////////////////////////////////////////////////
/*                          ご注意！！                            */

・このメールを返信しないでください。
・ご意見・ご希望・ご感想は[チョー普通な日記]よりお送りください。
http://www.kab-studio.biz/nikki2/
・購読登録を解除したいときにはこのページで行なってください。
＊http://www.mag2.com/m/0000012198.htm
＊http://www.pubzine.com/detail.asp?id=000590
・解除は自分で行なってください。
・バックナンバーはこれらのページにあります。
http://backno.mag2.com/reader/Back?id=0000012198
http://www.kab-studio.biz/Freeware/index.html#MailMagazine


////////////////////////////////////////////////////////////////////
/*
    KAB-studio.h
      Weekly Mail Magazine.
      Written by Kaburaya Seiden.
      http://www.kab-studio.biz/Info/MailMagazine/

    (C)KAB-studio 1999 - 2003 ALL RIGHTS RESERVED.
        http://www.kab-studio.biz/
        info@mail.kab-studio.biz
*/
////////////////////////////////////////////////////////////////////

