Reading Gauche/vm/insn/BF


Top / Reading Gauche / vm / insn / BF

BF

BF then

説明

条件分岐(Conditional branches)インストラクションの1つ。
条件分岐インストラクションは VAL0 レジスタに置かれたテストの結果を参照して条件分岐を行う。

BF では VAL0 レジスタが #f のときにオペランドを取り出しそれを PC レジスタに格納する。

#f でない場合はオペランドを無視して PC レジスタをインクリメントし次の命令に進む。

BF は Branch if False の略だと思われる。

使用例

(disasm (lambda () (if #f 'false 'true)))

;; 0 CONSTF

;; 1 BF 5 ; (if #f 'false 'true)

;; 3 CONST-RET false

;; 5 CONST-RET true

関連項目

関連インストラクション

コメント

最新の1000件を表示しています。 コメントページを参照

お名前:
  • Branch if False でよいかと思います。#fの場合にはPCレジスタについての言及があるのに非#fの場合は「次の命令に進む」だけだとちょっとアンバランスな気がします:VAL0が#fの場合はオペランド then をPCレジスタに格納→thenにある命令に進む/#fでない場合、オペランドは無視しPCレジスタを1加算→次の命令に進む、という対応が見える書き方でも良いかなと。 -- naoya_t 2008-04-04 (金) 23:42:02
    • ご指摘の点を反映しました。 -- ひげぽん 2008-04-08 (火) 00:22:05

MENU

now: 3

リンク


最新の20件
2019-02-26 2018-10-07 2018-09-20 2018-05-09 2017-09-29 2017-01-10 2016-12-11 2016-10-04 2016-08-14 2016-05-29 2015-12-28 2013-02-25 2013-02-21 2013-02-20 2013-02-12 2013-02-11 2013-02-10
最新の20件
2010-02-01 2010-01-31 2010-01-30 2010-01-29 2010-01-16

Counter: 2544, today: 1, yesterday: 0

リロード   新規 編集 凍結 差分 添付 複製 改名   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS

Last-modified: 2008-04-08 (火) 00:22:06 (4061d);  Modified by mona
PukiWiki 1.4.6 Copyright © 2001-2005 PukiWiki Developers Team. License is GPL.
Based on "PukiWiki" 1.3 by yu-ji
Powered by PHP 5.2.17
HTML convert time to 0.078 sec.