2 By hikarupsp 2013-2014 for OSECPU-VM
5 OSECPU-VMのJavaScript実装です。
6 JavaScriptは、ほとんどの場合ウェブブラウザさえあれば実行できる言語なので、より多くの環境でOSECPUコードを実行させることができます。
7 また、HTML5技術(Canvas)と連携することで、ウェブページに直接OSECPUコードを埋め込むこともできるようになるでしょう。
8 これは、テキストを直接転送しているHTMLにとって、データの転送量を削減することにもつながります。
11 動作を確認している環境は以下の通りです。(app0023フロントエンドコードテキストのStepInMs実行にて確認。)
12 -Chrome (Mac OSX, Windows)
13 -Safari (Mac OSX, iOS)
15 -InternetExplorer9 (Windows)
18 -アプリケーションバイナリのフロントエンドコードHex文字列を実行し、その結果を表示することができます。
19 -実行バイナリをドラッグ&ドロップで直接読み込ませ、実行させることができます(HTML5FileAPI対応ブラウザに限ります)。
20 -バックエンド命令はほとんどが実装されていますが、APIおよびメモリ関連の一部の命令は未実装です。
23 組み込んで使用する方は、index.htmlのサンプルコードを見ていただければ、だいたいはわかると思います。
25 +binaryCodeのところに、バイナリをHex文字列化したものを打ち込む
26 --もしくは実行バイナリファイルを直接読み込ませることもできます。
28 Loadボタンを押すことで、バイナリコードが解釈されてWebCPUで実行可能な状態になります。フロントエンドコードの場合、環境によってはデコードに少し時間がかかるかもしれません。
32 ++StepInMs:1ミリ秒ごとに区切って実行します。デバッグ表示をしている間は最速で実行する方法です。
33 ++StepIn100:100ステップ実行します。
34 ++Execute:最速で実行します(デバッグモード有効時は使用しない方がよいです)
36 デバッグモード時は、実行中のレジスタ情報と現在実行中の命令について詳細を確認しながら実行できます。
37 負荷のかかるアプリケーションを実行する際は、デバッグモードを無効にするのがよいでしょう。