Instruction Set Architecture Description: Abstract interface between hardware and the lowest level software User portion of the instruction set plus the operating system interfaces used by application programmers Compiler Assembler Digital Logic Design Circuit Design