x86 開始發展的那個時期,處理器的微指令都是屬於複雜指令集 (CISC) 類型的。因為當時的高階語言與編譯技術較不成熟,程式大多以低階語言來完成,所以為了減少程式開發的複雜度,遂開發出功能完整的指令,也就是說,程式設計師僅需用一行指令,就能令處理器完成一個完整但複雜的動作。譬如說兩個數相乘,其實是可以分解成累加多次,如果處理器提供了乘法動作的指令,那麼程式設計師就不需要自己去寫多次加法的動作,僅需直接使用乘法指令就能完成,儘管這個乘法指令在處理器中必須進行很多次解碼與執行的動作。所以複雜指令集的一大特色就是,程式相對較短,程式設計師的負擔較小。
因為要實做很多功能完整的動作,使得複雜指令集處理器的設計變得很複雜,晶片越複雜,相對地消耗的功率越大,而且因為指令的長短不一,所以難以進行最佳化。而且後來的統計研究發現,一個程式中大部分的程式往往僅使用到一少部分的指令集,也就是說指令集中大部分的指令僅僅佔程式的一小部分,甚至沒被用到。所以後來就有了開發精簡指令集電腦 (RISC) 的概念出現。