アットウィキロゴ

G801の一文字変数について

 一文字変数は、A~Z(文字列変数の場合はA$~Z$)の一文字で表される変数であり、メモリの固定した領域に確保される。

 一文字変数領域を使用することで、BASICとマシン語とのパラメーターのやり取りがスマートに行える。

 PC-G801の一文字変数に文字列を入れてRAMを調べると、1800H~18CFHが一文字変数のワークエリアと判明。

 1800HがZ(Z$)の領域で以降、8バイトずつYXW・・・Aとアルファベットを遡ってゆく。数値変数Aと文字変数A$は同じ領域を使用する。データの格納方法は以下のようになる。

文字列の場合


Z$="ABCD"
→ 1800:F5 41 42 43 44 00 00 00

文字列の場合7文字まで、先頭がF5H 足りない部分は00で埋める
0終端とは違い、7文字の場合は領域一杯に文字列コードが埋まることに注意。

数値の場合


Z=12345678901
1.23456789E10
→ 1800:01 00 12 34 56 78 90 00

Z=123456
→ 1800:00 50 12 34 56 00 00 00

オフセット 意味
+0 指数部3、2桁目
+1 指数部1桁目、および仮数部の符号
+2~+6 仮数部BCD10桁 左詰め、0で終端
+7 00
+0の上位下位ニブル、+1の上位ニブルの3桁で指数部を表す。
プラスは 000~099 で 0~99 マイナスは 999 →-1 998→-2 ~ 901→-99
+1 b3 仮数部符号 0=プラス 1=マイナス
最終更新:2013年02月21日 02:46