バイトコードが扱えるメリットのサンプル
http://cs3book.flashoop.jp/wiki/index.php?%E3%83%90%E3%82%A4%E3%83%88%E3%82%B3%E3%83%BC%E3%83%89%E3%81%8C%E6%89%B1%E3%81%88%E3%82%8B%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88%E3%81%AE%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB目次へ戻る
バイナリについて †
原稿 †
Wikiだと途中保存とかを怠ってうっかり消えてしまうので、 Google Docsで書いてます。
担当 te [#zd2e6d63] †
名村
情報リンク集 †
執筆にあたって †
ActionScript?では今までバイナリという概念は存在しませんでした。バイナリというコンピュータの基礎概念を扱えるようになることで、 ActionScript3.0で出来ることの幅が驚くほど広がりました。この章では、バイナリという概念の基礎を説明しつつ、バイナリを使ってできることをいくつか紹介していきます。
コンセプト †
バイナリと言っても、そもそもバイナリとは何なのでしょうか。この後で紹介するいくつかのサンプルは、このバイナリの機能を活用して作成したものになります。そのため、まずはバイナリの基礎を簡単に解説してから先に進めることにします。バイナリについて十分に理解している自信のある方は、解説の項目は読み飛ばしてください。
バイナリ(Binary)を日本語で言うと「2進法」になります。この2進法は、数学の授業で学ぶ2進法と同じものです。生活で使う普通の数字は、10で桁が上がるので「10進法」になります。2進法は、2で桁があがります。そのため、2進法には、0と1しか数字が存在しないのです。
10進法と2進法の対応表
| 10進法 | 2進法 |
| 0 | 0 |
| 1 | 1 |
| 2 | 10 |
| 3 | 11 |
| 4 | 100 |
| 5 | 101 |
| 6 | 110 |
| 7 | 111 |
| 8 | 1000 |
| 9 | 1001 |
| 10 | 1010 |
では、なぜ10進法ではなく、わざわざ日常では使わない2進法がここで出てくるのでしょうか。その理由は、コンピュータの仕組みにあります。コンピュータは、電気によって制御される機械です。コンピュータの中にあるたくさんの部品は、お互いに電気をやりとりすることで、情報の受け渡しを行い、動いています。コンピュータの部品は、あらゆる情報を電気が流れているか、流れていないか、の2つの状態で表現しなければなりません。つまり、2進法の「0」と「1」だけの世界は、コンピュータの電気が「流れている」「流れていない」の2つしかない世界と同じなのです。このため、コンピュータの世界ではよく2進法が使われ、「バイナリ」がよく出てくるのです。
コンピュータの世界がバイナリで出来ているため、コンピュータ上のあらゆるデータは、バイナリで成り立っています。たとえば「3469」という10進法の数字があったとしましょう。この数字も、コンピュータの中ではバイナリとして表現されます。「ああああ」という平仮名の文字も、コンピュータの中では、0と1だけのバイナリで成り立っています。
ここで、「ビット(bit)」と「バイト(byte)」について解説しておきます。コンピュータやゲーム機などの話題で、「32ビット」「64ビット」という言葉を聞くことはないでしょうか。このビットとは、まさしくバイナリの表現の単位のことなのです。ビットとは、バイナリの一番小さな表現で、1桁分のデータ、つまり「0」か「1」かの1桁分のことです。32ビットと言うと、「0」か「1」が32桁並ぶことになります。たとえば、「10110010」や「11011100」のような2進数は8桁あるので、8ビットになります。さらに、8桁のビットのことを1バイトと言います。よくハードディスクで100メガバイト、1ギガバイトと言う言葉を聞くと思いますが、そのバイトと同じものになります。したがって、1バイトには、8個の「0」「1」が保存できることになります。1メガバイトは、およそ1,048,576バイトになり、1,048,576バイトは、8,388,608ビットになります。つまり1メガバイトの中には、 8,388,608個の「0」と「1」を保存することができるのです。
ActionScript2.0までは、このコンピュータの基礎であるバイナリを扱うことはできませんでした。しかし、ActionScript3.0になってバイナリを扱うことができるようになり、作成するアプリケーションの幅が途端に広がりました。次項では、バイナリによって使えるようになったサンプルをいくつか紹介します。
AS3のメリット †
ActionScript3.0のメリットとしては、バイナリが扱えることそのものになります。ActionScript2.0までは、バイナリを扱うことができませんでした。