サイタプログラミングスクールC言語プログラミング入門講座神奈川 楽しめるC言語セミナー スクールブログ 整数の範囲の余...

整数の範囲の余談1(過去のお話)

今回から2回にわたり、整数の範囲にまつわるお話を書きたいと思います。

その1は、過去(現在でもあるかも)のお話です。

1986年5月に、後に日本を代表するロールプレイングゲーム(RPG)シリーズの初代となるゲームが発売されました。

そのゲームとは。。。ファミコン版のドラゴンクエストです。

私が小学校6年生のときで、本当は受験を控えていたにも関わらずハマってしまったゲームです。

さて、このゲームには様々なステータスがありました。ヒットポイント(HP)やマジックパワー(MP)、経験値やお金(ゴールド)といったものです。

さて、このゲームをやった事があるかたはご存知かも知れませんが、この各種ステータスには上限値というものがありました。その上限値は、HPとMPは255、経験値とゴールドは65535でした。

この値、どこかで出てきましたね。そう、それぞれ最上位ビットを符号ビットとして扱わない場合の、1バイトと2バイトの最大値なのです。

このことから、HPとMPを制御するデータは1バイト、経験値とゴールドを制御するデータは2バイトでプログラミングされていることがわかるのです。

小学生で2進数の考え方が浸透していなかった私は、特に経験値やゴールドの上限値が「何故こんな中途半端なの?」と思ったのを覚えています。

他にも、255や65535で上限値を切られたデータが存在するゲームがあるようですが、2進数の考え方を知らないうちは「中途半端だなぁ」と思いますよね。

以上、余談その1でした。

さて次回は、未来起こりうる話を書きます。かつて「2000年問題」の騒動があったのを記憶されているかたも、多いと思います。同じような問題が、未来にも起こる可能性があるのです。

24年後あたりに。。。

 

(2014年4月21日(月) 16:29)

前の記事

次の記事

新着記事

コーチの源田です。 かなり久々のブログ更新になります。 今回は、これまでのプログラミングレッスンを通して再認識したことを記します。 タイトルにも記しましたが、それは  ・ アルゴリズムを作る練習の重要さ です。 アルゴリズムとは、 ・コンピュータに何ら...

源田です。 こちらの投稿は、かなりひさびさになってしまいました。 さて、最近Android用アプリ開発ツールである「Android Studio」(Android公式のもの)に注目しています。 というのも、最新のバージョン(2.2)でCやC++まわりの連係が強化されたから、な...

しばらく、更新が滞ってしまいました。すみません。 今回は整数の範囲に関する余談のその2、未来起こりうる話について書きます。 本題に入る前に、かつて「2000年問題」という騒動が起こったのを覚えていますでしょうか? これは、年に関する処理を誤ることでコンピュータが誤動作する可能...

今回から2回にわたり、整数の範囲にまつわるお話を書きたいと思います。 その1は、過去(現在でもあるかも)のお話です。 1986年5月に、後に日本を代表するロールプレイングゲーム(RPG)シリーズの初代となるゲームが発売されました。 そのゲームとは。。。ファミコン版のドラゴンク...

前回は、整数の範囲について書きました。 その最後で、「負の整数の2進数数値表現は、どのようになるのか」という点に触れました。今回は、この点について書きます。 まず、結論から書きます。 負の整数の2進数数値表現は、「正の整数の2進数数値表現の全ビットの0/1を入れ換えて、最後に...

レッスン無料相談窓口のご案内

サイタでは、C言語レッスンに関する疑問に
専門カウンセラーがお電話にてご案内しております。
お気軽にご利用ください。

お電話相談窓口はコチラ

ブログ記事 ページ先頭へ