A study of the low-level operation of computer systems. Participating in hands-on activities that often require teamwork, students investigate how computers process instructions in modern computers as information is encoded, stored, and executed in a machine’s physical structures. In addition to learning how to program in assembly and machine languages, students investigate the design and logical operation of processors and the mathematics of machine computation.
- Explain how programs written in high-level computer programming languages execute using lower-level computer circuitry
- Identify levels of the Memory Hierarchy and the implications of using the various levels to implement high-performance programs
- Develop C and Assembly language programs which use the appropriate levels of the Memory Hierarchy and processor registers to create performant, executable programs and arithmetic logic units
- Describe and use parallel processing techniques to increase a program’s performance and efficiency
- Integrate hardware and software components using original C and Assembly language code to develop hardware-based, performant computational projects
