Introduction to Computer Organization (Winter qtr 2020 UCLA)
UCLA Computer Science 33, winter 2020. Introduction to Computer Organization Course objective: Understand how computer systems work, so that you can write better software.
Instructor: Paul Eggert Prerequisite: Computer Science 32.
Introductory course on computer architecture, assembly language, and operating systems fundamentals. Number systems, machine language, and assembly language. Procedure calls, stacks, interrupts, and traps. Assemblers, linkers, and loaders. Operating systems concepts: processes and process management, input/output (I/O) programming, memory management, file systems. Letter grading.
Related Computer Science Curricula 2013 (CS2013) knowledge areas: AR/Machine Level Representation of Data AR/Assembly Level Machine Organization AR/Memory System Organization and Architecture AR/Interfacing and Communication AR/Functional Organization AR/Multiprocessing and Alternative Architectures AR/Performance Enhancements OS/Memory Management PD/Parallelism Fundamentals SF/Parallelism
Related IEEE Software Engineering Body of Knowledge, Version 3.0 (SWEBOK V3.0), 2014: CMP.cf.5. Computer organization CMP.ct.6. Error handling, exception handling, and fault tolerance
Related Computer Engineering Curricula 2016 (CE2016) knowledge units: CE-CAO-3. Instruction set architecture CE-CAO-4. Measuring performance CE-CAO-5. Computer arithmetic CE-CAO-6. Processor organization CE-CAO-7. Memory system organization and architectures CE-CAO-8. Input/Output interfacing and communication CE-CAO-10. Multi/Many-core architectures
Homework | Score |
---|---|
Homework 1 | 8.64 / 10 |
Homework 2 | 10 / 10 |
Homework 3 | 9.6 / 10 |
Homework 4 | 9.8 / 10 |
Homework 5 | 9.6 / 10 |
Lab | Score |
---|---|
Datalab | 33 / 33 |
Pexex Lab | 100 / 100 |
Smashing Lab | 96 / 100 |
OpenMP Lab | 100 / 100 |
OpenMP Extra Credit | 4 / 10 |