ブログ「サイバー少年」

ブログ「サイバー少年」へようこそ!
小学六年生ごろからプログラミングを趣味にしている高校生のブログです。
勉強したことについての記事などを書いています。フリーソフトも制作、公開しています。
(当ブログについて詳しくは「ブログ概要紹介」を参照)

サイバー少年が作ったフリーソフトは「サイバー少年の作品展示場」へ

Boolean型のメモリ節約構想

Boolean型って、データは1ビットでもメモリの都合上8ビット確保するため、結局メモリ使用量はByte型(char)と変わらないんですよね。

そこで思ったんですが、8ビットのところに8つのBoolean変数を、1ビットずつ格納すればいいんじゃないかと。

要するにビットフラグみたいなイメージです。

Boolean型の変数を8つ以上使うケースは多いと思うので、メモリ使用量が8分の1になります。
昨今のコンピュータにとって大した違いじゃありませんが…。

Byte型(char)の変数を宣言して、そういう処理を自作することも難しくはありませんが、一般的に浸透していないのは不思議です。

tag:

コメント

Cにはビットフィールドというものがあって、
データをビットごとに扱えるのですが、
入門のサイトではあまり説明されておらず、
ご存知でない方も多いようですね。

今はリソースの節約よりも見やすさ・保守のしやすさが
重視されるので、そのようなテクニックが浸透しないのかも
しれません。

  • 2013/02/13(水) 21:05:46 |
  • URL |
  • Jade #-
  • [ 編集 ]

Re: Jade

ビットフィールドですか、便利そうですね。

おっしゃる通りで、確かにビットの集まりとして考えるより、
True, Falseのブール値 単体として考えるほうが直感的です。

まぁ、言語などの工夫次第ではビットを気にせず
上記のような節約をすることも可能かと思います。

しかし、最近は「リソースの節約」というのが重要にならないですよね。

コメントの投稿

トラックバック

トラックバック URL
http://cyberboy6.blog.fc2.com/tb.php/239-fb2a1369
この記事にトラックバックする(FC2ブログユーザー)

当ブログをご利用(閲覧等)になる場合は必ず「当ブログの利用規定」をお守りください。