マイクロプロセッサ命令には、整数と浮動小数点の 2 つの基本的なタイプがあります。
したがって、それらは整数処理ユニットと浮動小数点処理ユニットで実行されます。それは理にかなっていますよね?
しかし、プロセッサーに命令を IPU または FPU に送信するように指示するものは何ですか? どの命令がどの種類であるかをどのように知るのでしょうか?
たぶん、命令にはビット/フラグ/ LUTまたは他のものと区別するための何かがありますか?
マイクロプロセッサ命令には、整数と浮動小数点の 2 つの基本的なタイプがあります。
したがって、それらは整数処理ユニットと浮動小数点処理ユニットで実行されます。それは理にかなっていますよね?
しかし、プロセッサーに命令を IPU または FPU に送信するように指示するものは何ですか? どの命令がどの種類であるかをどのように知るのでしょうか?
たぶん、命令にはビット/フラグ/ LUTまたは他のものと区別するための何かがありますか?
各 CPU 命令にはオペコードがあります。CPU はオペコードを調べて、命令をどの実行ユニットにディスパッチする必要があるかを判断します。1101 1....
x86 の浮動小数点命令の場合、オペコードは通常、最初の 16 進数が isで始まりD
、次の桁の MS ビットが設定されます。たとえば、(浮動小数点加算) は、その後に続く引数に応じて、またはでFADD
始まります。対照的に、整数命令のオペコードは通常(または) で始まります。つまり、最初の桁はorで、2 番目の桁は MS ビットがクリアされています。引数に応じて、、、、、D8
DC
ADD
x000 0...
x
0
1
0
8
01
02
03
04
05
、80
、81
または83
。