***HPクリエイターのためのCGI講座 第2回***
| 演習問題がここのページにあります。 今週中を目標に完成させてください。 (解答も同じページにありますが、まずは、自分自身でチャレンジしてくださいね)  | 
    
いよいよ、講座のスタートです。
募集要綱にも案内したとおり本講座は、HP作成経験者を対象としています。
FTPでの転送(ディレクトリ、ファイル)やHTMLのタグ等については、ある程度の知識を持っていることを前提として話を進めていきます。
本講座でのCGI用プログラム言語は、CGI用プログラム言語としては現在もっともポピュラーと思われるPerlを使用します。
Perl(Practical Extraction and Report Language)はLarry
Wall氏によって開発されたプログラム言語です。
文字列操作を得意とし、HTML文章を操作しなければならないCGI用言語としては、適しているでしょう。
<コンピュータの基本>
CGI用プログラムと言えども、コンピュータ上で動くプログラムなので、コンピュータに関する基礎知識は必要です。
ここでは、コンピュータの扱うデータ単位について解説しましょう。
コンピュータは、ON/OFFのスイッチの固まりだと聞いたことはないでしょうか?
まさしく、これがデジタル機器の特徴です。
このスイッチ(ON/OFF)一つをbit(ビット)と呼びます。
このbitが8つ集まったものをbyte(バイト)と呼びます。
ON/OFFでは分かりにくいので、1/0の数値に置き換えて表します。
bitとbyteを0/1で表すと次のような情報を持つことができます。
1bit=0 or 1
1byte = 8bit = 00000000〜11111111
1byteは、0/1の8個の組み合わせでできているので、全組み合わせを考えると次のようになります。
| 00000000 | 
| 00000001 | 
| 00000010 | 
| 00000011 | 
| : :  | 
    
| 11111100 | 
| 11111101 | 
| 11111110 | 
| 11111111 | 
この組み合わせの合計は、256通り(2の8乗)になります。
1byteは 0〜255 の数値を表現できることになります。
マイナスを考えた場合は、全組み合わせを -128〜127
に割り当てます。
256通りの数値を表せるのであれば、-128〜127
ではなく -128〜128 ではないのかと、勘違いされる人はいませんか?
種明かしをすると
  マイナスの数は -1〜-128 で128個
  プラスの数は 1〜 127 で127個
これで合計255通りですが、ここに0の表現も必要なので、合計256通りになります。
数値を表すのに、 0〜255 では貧弱なのでbyteをいくつか集めて、一つの単位することもあります。
2byteを1単位にした場合・・・2の16乗=0〜65535
or -32768〜32767
4byteを1単位にした場合・・・2の32乗=0〜4294967295
or -2147483648〜2147483647
コンピュータの数の単位は殆どの場合、2のべき乗になります。
3byteを1単位にするようなことは、無いと言っていいでしょう。
<数値表現>
1byteは 0〜255(-128〜127)の数値を表すことができるのは、前述の通りです。
このように 0〜255(-128〜127)のような表記を10進数と呼びますね。
コンピュータの世界では10進数の他に2進数、8進数、16進数が使われます。
2進数・・・0と1で表現
8進数・・・0〜7で表現
16進数・・・0〜9とA〜Fで表現
| 10進数 | 2進数 | 8進数 | 16進数 | 
| 0 | 0 | 0 | 0 | 
| 1 | 1 | 1 | 1 | 
| 2 | 10 | 2 | 2 | 
| 3 | 11 | 3 | 3 | 
| 4 | 100 | 4 | 4 | 
| 5 | 101 | 5 | 5 | 
| 6 | 110 | 6 | 6 | 
| 7 | 111 | 7 | 7 | 
| 8 | 1000 | 10 | 8 | 
| 9 | 1001 | 11 | 9 | 
| 10 | 1010 | 12 | A | 
| 11 | 1011 | 13 | B | 
| 12 | 1100 | 14 | C | 
| 13 | 1101 | 15 | D | 
| 14 | 1110 | 16 | E | 
| 15 | 1111 | 17 | F | 
| 16 | 10000 | 20 | 10 | 
| 17 | 10001 | 21 | 11 | 
| : :  | 
    |||
16進数に関しては、HTMLで色コードの設定等に使用していますね。
<HTMLでの色コード>
3バイトを1単位として、各バイトをR(赤)、G(緑)、B(青)に割り当てて表現
| 例 | ||||
| 色コード | R | G | B | 表現される色 | 
| FF0000 | 255 | 0 | 0 | 赤 | 
| 00FF00 | 0 | 255 | 0 | 緑 | 
| 0000FF | 0 | 0 | 255 | 青 | 
| FF00FF | 255 | 0 | 255 | 紫 | 
********************************************************************************
講師:ALK alk@arkland.co.jp
運営:アークランド(株) http://www.arkland.co.jp