As programmers we often work several layers above cpu instructions, working with tools that make our lives simple, easy, and stress free! Hahah, of course that isn't the case. We face different challenges at different levels in the system. It really is amazing to think about what goes into a typical appliation level software stack, for example: These millions+ lines of code that a Linux, Windows, or web application is running on top of means the details of the hardware and processor are abstracted to a far away land. Processor features and the Instruction Set Architecture (ISA) often don't matter from a functional perspective. Tools, OSes and other systems take care of lower level details. You might choose a particular processor or processor family for specific attributes, but often as long as you've got a compiler and other tools for that processor you don't really care what ISA is being used. Goal Care about CPU and ISA? Application develop...