記事閲覧

− 野ざらし言 −

5855 Re^24: N88-BASICのRENUMのようなマクロ

めざら 2025/05/06(Tue) 22:36 [5854]へのコメント
http://mezala.la.coocan.jp/
あくまでも全置換の直後の r に置換した数が格納されるということしか分かりません。途中の戻り値については,ちょっと保証できないです。実験上は一定の値が示されているようにも思いますが,どこにも記述は見つからないので,断言はできません。

なお,戻り値(r)と内部レジスタは混同されやすいのですが,条件分岐で参照されるのは内部レジスタであって r ではありません。

また,「?」は内部レジスタを反転(論理NOT)しつつ,内部レジスタが偽(0)だった場合は次の1命令または1ブロックをスキップするという働きをするキーワードです。

内部レジスタに値が格納されるのは(式)で評価した場合であり,rは直接関係ありません。
例えば,(r==0) ? { A } ? { B } という構文であれば,rが0のときに条件式は真なのでブロックAが実行され,ブロックBはスキップされます。

大事なことなので二度言います。
戻り値(r)と内部レジスタを混同しないようにしましょう。

ちなみに,コールしたマクロから戻る時に,終了時の内部レジスタをrに格納して呼出し元に戻るという機能があるので,そのへんがさらに混乱を誘うのかもしれません。逆に言うと,サブルーチンの戻り値に規則性を持たせる記述ができるわけです。このこともセットで覚えておくとよいと思います。

関連記事一覧ツリー (▼ を押すとツリー全体を一括表示します)

- 5731.N88-BASICのRENUMのようなマクロ - としき 25/03/29-14:22

返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

おなまえ :
Eメール :
タイトル :
メッセージ: 通常モード(推奨)  整形モード(非推奨)  preモード(空白再現)
※ プログラムコード等を含まない場合は,できるだけ通常モードをご利用ください。

参照先 :
暗証キー: (英数字で8文字以内) プレビューなし


- 以下のフォームから自分の投稿記事を修正・削除することができます -

処理 記事No. 暗証キー