Ngaro

ソフトウェアのスクリーンショット:
Ngaro
ソフトウェアの詳細:
バージョン: 20110929
日付のアップロード: 11 May 15
開発者: Charles Childers
ライセンス: 無料
人気: 35

Rating: 3.0/5 (Total Votes: 1)

Ngaroはデュアルスタックアーキテクチャのための携帯用の仮想マシンです。命令セットは、基本的にフォースのサブセットです。基礎となるOSと相互作用する能力に限界が、それは様々なプログラムが書き込まれ、その上で実行されることを可能にするのに十分であるべきです。
パッケージには、いくつかの基本的なドキュメント、完全なソースコード、機械等のコンパイラ、およびいくつかの小さな例が含まれています。
使用法:
./ngaro imagenameの
命令セットは、最小限に維持されます。説明書の正確なセット
時折変更されますが、次のリストは、約のために安定しています
年。 (最後の3つは、ポートベースのI / Oモデルを扱う、新しいです)
 0 NOPは何もしません
 1 LITは、スタックに次のセルの値をプッシュ
 2 DUP重複トップ
                 スタック上のアイテム
 3 DROPドロップ先頭の項目
                 スタック上
 4スワップ取引上の2つの
                 スタック上の項目
 5 PUSHは、一番上の項目を押してください
                 のスタック
                 アドレス·スタック、ドロップ
                 TOS
 6 POPは、最上位のアイテムをポップ
                 アドレスはオフスタック
                 と上に置きます
                 データ·スタック
 7 CALLは、そのアドレスを呼び出し
                 次のリテラル
                 に対応
 アドレスに8 JUMPジャンプ
                 次のこと
                 リテラル対応
                 へ
 9;呼び出し元に戻り、
                 CALLとともに使用
10>条件付きジャンプをジャンプします。それ
                 TOSとNOSを比較します。
11シフトビット右
25 0;終了(&ドロップ)の場合
                 TOSは0です
26 1による1+インクリメントTOS
1で27 1-デクリメントTOS
読む28ポート
ポートへの29のOUTストア
ポートベースのための30のWAIT待ち
                 終了する要求
サポートされていないオペコードが発生した場合は、interal IPレジスタは次のように設定されています
メモリの終わり。この問題が発生した場合の画像のコードの実行が停止します。
いくつかの命令はアドレスを格納するための次のセルを利用したり、
値。これらは:
 1 LIT
 7 CALL
 8 JUMP
10>ジャンプ
11

この何、このリリースで追加されました。

このバージョンは、すべての実装の更新されたバージョンと、実質的に更新されたドキュメントをもたらします。
PythonやRubyやPerlやCommon Lispの、x86のアセンブリ、ForthのANSは、JavaScript、レトロ、LuaのはJava、C、C#、F#の、および移動で書かれた14の実装が存在することになります。

開発者の他のソフトウェア Charles Childers

Uki
Uki

5 Jun 15

RetroForth
RetroForth

11 May 15

Retro
Retro

20 Feb 15

へのコメント Ngaro

コメントが見つかりません
コメントを追加
画像をオンにする!