Computer organization
Appearance
Computer organization is the design of abstracted computer components, such as the CPU and memory subsystem. The phrase is often confused with computer architecture, but a general rule is that which is directly apparent to the assembly-level programmer falls under computer organization. When design changes can only be observed by the programmer secondarily, such as through thermal dissipation or application performance, this design is under the area of computer architecture. For instance, a major aspect of computer organization involves the creation of an Instruction set. More nuanced characteristics of a computer, such as cache eviction policies and branch prediction, fall under computer architecture.