独習mrubyバイトコード[OP_LOADT]
OP_LOADTArgumentsA:レジスタ番号
How it works?
How it works?
R(A) := true
レジスタにtrueオブジェクトを代入する
When used?trueを扱うときに用いられる。
独習mrubyバイトコード[OP_LOADSELF]
OP_LOADSELFArgumentsA:レジスタ番号
How it works?
How it works?
R(A) := self
レジスタにselfオブジェクトを代入する
When used?selfに対して、何か処理をする ...
独習mrubyバイトコード[OP_LOADNIL]
OP_LOADNILArgumentsA:レジスタ番号
How it works?
How it works?
R(A) := nil
レジスタにnilオブジェクトを代入する
When used?nilをレジスタ引数にとる命令に使われ ...
M5Stack/ESP32 Arduino向けのmruby/cライブラリを作る
Wio LTE Arduino用にライブラリ化したmruby/cを少しだけ改造して、ESP32 Arduino用にしてみました。
まだAPIの移植はほとんどできていませんが、M5StackのLCD用のサンプルスケ
独習mrubyバイトコード[OP_LOADI]
OP_LOADIArgumentsA:レジスタ番号
sBx:整数
How it works?
sBx:整数
How it works?
R(A) := sBx
レジスタにFixnumとしてsBxの値を代入する。
sBxは16bitの符号付き整数で ...
独習mrubyバイトコード[OP_LOADL]
OP_LOADLArgumentsA:レジスタ番号
Bx:リテラル番号
How it works?
Bx:リテラル番号
How it works?
R(A) := Pool(Bx)
レジスタに実行中のIREPに格納されているBx番目のリテラルのポインタを代入す ...
独習mrubyバイトコード[OP_MOVE]
OP_MOVEArgumentsA:レジスタ番号
B:レジスタ番号
How it works?
B:レジスタ番号
How it works?
レジスタにレジスタのポインタを代入する
MOVEとあるが、実際はポインタのコピーを行っている。
独習mrubyバイトコード[OP_NOP]
OP_NOPArguments
なし
How it works?何もしないで、次の命令に移る。
When used?@miura1729 さんの記事にもあるが、grepしてみても、mrbgems/mrbgems/ ...
The Instruction set of mruby/c compared with mruby
(Japanese version is here)
Recently I’m studying mruby byte-code to understand mruby/c.
In mruby/c, i ...
mruby/cがサポートするmrubyバイトコード命令の範囲
mruby/cを理解するために、mrubyバイトコードを勉強している。
実装をコンパクトにするため(もしくは開発中のため)、mruby/cはmrubyのすべての命令をサポートしていない。
mruby/cのvm.cとmr ...