バイトコードバイトコードとオペコードオペレーションコードとは何ですか?
違いは何ですか?
すべてのインタープリター言語には同様のコードがありますか?
私の理解は次のとおりです:
バイトコードとオペコードは両方とも中間コードです
インタープリタ型言語はソース コードを中間コードに変換し、仮想マシン (jvm、zend など) によって解釈されて実行されます。
PHP中文网2017-06-05 11:09:43
opcodeはオペレーションコードです。
Javaで使われるバイトコードもオペコードの一種です。各オペレーションコードが1バイトを使用するため、バイトコードと呼ばれます(実際にはマルチバイトのものもあります)。
各バイトは命令を表すために使用され、理論的には 256 個のオペコードが存在する可能性があります。
よく見かけるiadd
(将两个整数相加)、dadd
(2つの浮動小数点数の加算)はバイトコードではなく、ニーモニックです。
多くの通訳言語には 同様のコードがありません。
伊谢尔伦2017-06-05 11:09:43
バイトコードとオペコードはどちらも中間コードであり、比較することはできません。Java は中間コードのバイトコードにコンパイルされ、その後 jvm で実行されます。PHP は中間コードのオペコードにコンパイルされ、ZendVM で実行されます。