> Dennis Ritchie invents a powerful gun that shoots both forward and backward simultaneously. Not satisfied with the number of deaths and permanent maimings from that invention he invents C and Unix.
However, Intel has used their advantage in process technology to throw massive amounts of transistors to make up for the problems caused by all this complexity, and has done well. RISC has done well in the mobile space because those transistors tend to be power-hungry, but everywhere else x86 is today almost the only game in town.
One reason it's especially funny is that "HLT" is one of those legacy instructions that has pretty much no use in a modern system, yet takes up a whole slot in the byte encoding, while common operations like MOV or ADD often require extra prefix bytes to specify the size of the operands.
Hope that helps!
I guess it depends when and where one studied.
Having grown with Z80 and x86, it surely looked kind of alright to me.
I only missed the flat addressing from 68000, but given that I only had access to it on Amigas available at some dev meetings, it wasn't something I bothered much with.
Also I don't remember anyone jumping of joy during the MIPS assignments (using SPIM).
Is HLT no longer used in OS idle loops? Are there now other instructions which are better to use instead?
I'm still curious as to how Intel thought a mobile x86 chip could ever work.
So everything adds up. CYA!