質問: 私は最近Cしか扱わないのですがハンドアセンブルとアセンブラを扱ったことがあります。しかし、教科書に沿った内容しか扱いませんでした。 ふと今原点に帰り1と0の世界ですべてのビット列に対して命令が割り当てられているのか疑問に思いました もし、割り当てられていなかったとしたら命令割り当てのないビット列を入れて実行したらどのようになってしまうのか今更ながら疑問に思います 扱ったと言ってもこの程度で、熱心に研究された方がいらっしゃれば回答を頂きたいなと思います。
回答: 当然ながらCPU依存な話題ではありますが、仮に全てのビット列に命令が割り当てられていたとすると、それ以降、そのCPUに命令拡張を行う機会はないということになります。 例えばIntelプロセッサーの場合、SSE; Streaming SIMD Extensions命令は追加され続けているのが現実です。更には`UD2`命令なんかも用意されています。これは今後命令拡張したとしても無効なオペコード例外が発生することが保証されているオペコードです。