日刊!プチコン3号――使える文字数が256倍に!! 「文字コードとDIALOG」カウントダウン企画……あと8回

» 2014年11月10日 19時52分 公開
[瓜生聖,ITmedia]

使える文字数が256倍に――「文字コードとDIALOG」

 日本語といえば文字数の多い言語の1つ。ハードウェアスペックの低かった80年代初期のレトロPCでは、漢字を使える機種は限られていた。さらに、漢字が使えない機種の中にも英大文字のみ、英大文字・小文字とカタカナのみ、それに加えてひらがなまで、などの差があった。

 これは1文字を8ビットで表す、という前提のもと、そのわずかなスペースの中にどのようなキャラクタを押しこむか、という各メーカーの設計の違いによるものだ。機種によっては英大文字のみと割り切って、代わりにグラフィック文字と呼ばれる罫線やトランプのスート、人型などを多く入れているものもある。グラフィック機能のない機種では、画面すべてを文字で表現するため、グラフィック文字が扱えると表現力が増す。

 当時のレトロPC同様、1文字を8ビットで表現するプチコンmkIIでは英数字(英大文字/小文字)、記号、カタカナ、グラフィック文字256種類を扱うことができた(コントロールコードは存在しない)。プチコン3号では文字列の内部管理をUnicode(UTF-16)に移行し、扱える文字種が一気に増加した。なお、BOMは認識されない。

 漢字を扱うこともできるが、実際に漢字が表示できるのはDIALOG命令を使ったときだけ。コンソール画面および編集画面では漢字部分が「四角にバツ印」の豆腐になってしまう。どこででも表示可能な文字はキーボードから入力可能な文字で、プチコンmkIIと比べ、新たにひらがな、濁点・半濁点付きカタカナなどの日本語のほか、アキュート・アクセントやウムラウトなどダイアクリティカルマークのついたアルファベット、合字、ギリシャ文字、キリル文字などが含まれる。

 DIALOGは下画面に問い合わせ用のダイアログを表示して入力待ち状態にする命令。入力は大変だが、アドベンチャーゲームなどで活用できるだろう。

キーボードから入力できる文字種

画面は左から、標準(英大文字)、英小文字、グラフィック文字

画面は左から、グラフィック文字(シフト)、グラフィック文字2、グラフィック文字2(シフト)

画面は左から、記号、記号(シフト)、ダイアクリティカルマーク

画面は左から、ダイアクリティカルマーク(シフト)、合字、合字(シフト)

画面は左から、ギリシャ文字、ギリシャ文字(シフト)、キリル文字

画面は左から、キリル文字(シフト)、カタカナ(シフト)、カタカナ

画面は左から、ひらがな、ひらがな(シフト)

DIALOGは漢字対応(画面=左)。コンソールではひらがなは読めるものの、漢字はすべて「四角にバツ印」になってしまう。なお、表示できないだけでプログラム内の文字列定数として使うことは可能(画面=中央)。こちらはプチコンmkIIのキャラクタコード。256種のみだった(画面=右)

関係する命令

DIALOG "テキスト文字列"

 説明(1/2)

  ダイアログを下画面に表示し、了解ボタンが押されるまで待つ

 引数

  テキスト文字列:ダイアログに表示する文字列

 変数=DIALOG("テキスト文字列",[選択タイプ番号],["キャプション文字列"],[タイムアウト時間])

 説明 (2/2)

  ダイアログを下画面に表示し、指定したボタンが押されるまで待つ

 引数

  テキスト文字列

   ダイアログに表示する文字列

  選択タイプ番号

   0:了解(デフォルト)

   1:いいえ/はい

   2:戻る/次へ

   3:中止/決定

   4:中止/実行

   5:次へ

   -1:(特殊モード)

  キャプション文字列

   ダイアログ上部のキャプション欄に表示する文字列

  タイムアウト時間

   操作がないときにダイアログを自動的に閉じるまでの秒数

   デフォルト:0(タイムアウトしない)

 戻り

   -1:否定(左ボタン)

   0:タイムアウト

   1:肯定(右ボタン)

  128:Aボタン押下(特殊モード時)

  129:Bボタン押下(特殊モード時)

  130:Xボタン押下(特殊モード時)

  131:Yボタン押下(特殊モード時)

 補足

  ・テキスト文字列、キャプション文字列の合計は256文字まで

  ・文字列にCHR$(10)かCHR$(13)があると、そこで改行される

   (ただしキャプション文字列は1行のみ表示)

  ・文字列にCHR$を用いてUTF16の文字コードを含めると、

   漢字表示も可能

文字列変数 = CHR$(文字コード)

 説明

  指定された文字コードから文字を返す

 引数

  文字コード

   文字ごとに対応する番号

   ※(著者注)文字コードは16ビット

 戻り

  文字コードに対応する文字

 変数 = ASC("文字")

 説明

  指定された文字のASCIIコードを返す

 引数

  "文字"または文字列変数

 戻り

  指定された文字の文字コード

  ※(著者注)戻り値は16ビット

 次回はプチコンmkIIから大幅に使いやすくなった編集モードを紹介する。

※本稿の内容は開発中のものです。製品版配信時には仕様が変更される場合があります。

 「日刊!プチコン3号」で取り上げて欲しいネタや疑問、質問、感想は、ハッシュタグ「#nikkan_petitcom3」をつけてツイート! ライターの瓜生氏がたぶん(連載の中で)答えてくれるぞ。


Copyright © ITmedia, Inc. All Rights Reserved.

アクセストップ10

2024年04月26日 更新
  1. ワコムが有機ELペンタブレットをついに投入! 「Wacom Movink 13」は約420gの軽量モデルだ (2024年04月24日)
  2. わずか237gとスマホ並みに軽いモバイルディスプレイ! ユニークの10.5型「UQ-PM10FHDNT-GL」を試す (2024年04月25日)
  3. 「社長室と役員室はなくしました」 価値共創領域に挑戦する日本IBM 山口社長のこだわり (2024年04月24日)
  4. 「Surface Go」が“タフブック”みたいになる耐衝撃ケース サンワサプライから登場 (2024年04月24日)
  5. QualcommがPC向けSoC「Snapdragon X Plus」を発表 CPUコアを削減しつつも圧倒的なAI処理性能は維持 搭載PCは2024年中盤に登場予定 (2024年04月25日)
  6. 16.3型の折りたたみノートPC「Thinkpad X1 Fold」は“大画面タブレット”として大きな価値あり (2024年04月24日)
  7. あなたのPCのWindows 10/11の「ライセンス」はどうなっている? 調べる方法をチェック! (2023年10月20日)
  8. アドバンテック、第14世代Coreプロセッサを採用した産業向けシングルボードPC (2024年04月24日)
  9. AI PC時代の製品選び 展示会「第33回 Japan IT Week 春」で目にしたもの AI活用やDX化を推進したい企業は要注目! (2024年04月25日)
  10. ロジクール、“プロ仕様”をうたった60%レイアウト採用ワイヤレスゲーミングキーボード (2024年04月24日)
最新トピックスPR

過去記事カレンダー