アセンブリ言語の呼び出し方2 [アセンブリ言語]
アセンブリ言語を作成するには主に2つの方法があります。
ひとつは高級言語で用意されているアセンブリ言語呼び出し関数・ルーチンで高級言語プログラムの中で呼び出す方法です。これをインラインアセンブラと言います。この場合、普通のコンパイラでコンパイルをすればコンパイルできます。ただし、この方法だと、特にプロセッサの制御に使用するアセンブリ言語命令を利用できない場合があり、プロセッサが持つすべての命令を実行することができるわけではありません。
もうひとつはアセンブリ言語で記述されたファイルをC言語等の高級言語のプログラムから呼び出す方法です。この場合は、基本的にすべてのアセンブリ言語命令を実行することができますが、自由度が高めた分、アセンブリ言語で完結できる関数やルーチンとして動作するプログラムにする必要があります。この場合、高級言語のファイルとアセンブリ言語のファイルはコンパイルは別々に行うことが可能です。
これらの手法は、すでに確立されている状況で今後も当分はこのようなやり方での実装が主流となりそうです。
ひとつは高級言語で用意されているアセンブリ言語呼び出し関数・ルーチンで高級言語プログラムの中で呼び出す方法です。これをインラインアセンブラと言います。この場合、普通のコンパイラでコンパイルをすればコンパイルできます。ただし、この方法だと、特にプロセッサの制御に使用するアセンブリ言語命令を利用できない場合があり、プロセッサが持つすべての命令を実行することができるわけではありません。
もうひとつはアセンブリ言語で記述されたファイルをC言語等の高級言語のプログラムから呼び出す方法です。この場合は、基本的にすべてのアセンブリ言語命令を実行することができますが、自由度が高めた分、アセンブリ言語で完結できる関数やルーチンとして動作するプログラムにする必要があります。この場合、高級言語のファイルとアセンブリ言語のファイルはコンパイルは別々に行うことが可能です。
これらの手法は、すでに確立されている状況で今後も当分はこのようなやり方での実装が主流となりそうです。
2018-12-20 00:53
nice!(0)
コメント(0)
トラックバック(0)
コメント 0