Skip to content

Part 3 · Course

CS380 COMPUTER SYSTEMS & ORGANIZATN

Electrical Engineering and Computer Science · 7 versions

Offerings are listed from 2027-1 Fall through 2031-1 Fall.

CS380 COMPUTER SYSTEMS & ORGANIZATN

  • 3.5 credit hours
  • (BS=0.0, ET=3.0, MA=0.0)
  • Version 2023-1
  • In effect
Scope
This course provides an introduction to computer systems, computer organization and related concepts. Emphasis is placed on understanding the implications of computer hardware and architecture on the performance and security of written code. Students learn basic C programming and assembly language. Topics covered include basic computer organization, architecture, reverse engineering and parallel computing. In addition to theory, students gain practical real-world experience using tools for profiling and debugging. By the end of this programming-intensive course, students will understand how the fundamental principles of computer systems impact their ability to write efficient code.
Lessons
40 @ 55 min (2.500 Att/wk)
Labs
9 @ 120 min
Special requirements
None
Prerequisites
one of
Corequisites
EE360
CS380 version 2023-1 offerings
Term Sections Section size Capacity Enrolled Wait list Seats Closed Details
2027-1 Fall 3 18 54 49 0 5 No Hours for 2027-1 Fall
2028-1 Fall 3 18 54 46 0 8 No Hours for 2028-1 Fall
2028-2 Spring 1 18 18 0 0 18 No Hours for 2028-2 Spring
2029-1 Fall 3 18 54 0 0 54 No Hours for 2029-1 Fall
2029-2 Spring 1 18 18 0 0 18 No Hours for 2029-2 Spring
2030-1 Fall 3 14 42 0 0 42 No Hours for 2030-1 Fall
2030-2 Spring 1 18 18 0 0 18 No Hours for 2030-2 Spring

CS380 COMPUTER ORGANIZATION

  • 3.5 credit hours
  • (BS=0.0, ET=3.0, MA=0.0)
  • Version 2022-1
  • Archived
Scope
This course provides an introduction to computer systems and related concepts. Emphasis is placed on understanding the implications of computer hardware, the operating system, and compilation system, on the performance and security of written code. Students learn basic C programming and the x86-64 assembly languages. Topics covered include basic computer organization, reverse engineering, buffer overflow, pipelining, the memory hierarchy, code optimization, and process creation. Students also gain exposure to topics in concurrency and parallel computing through the POSIX API. In addition to theory, students gain practical real-world experience using tools for profiling and debugging, including Valgrind and GDB. By the end of this programming intensive course, students will understand how the fundamental principles of computer systems impact their ability to write efficient code. **The additional 0.5CR of lab work for this course course was provisionally approved with the introduction of the CYBER SCIENCE major. Must receive approval by the CC NLT AY23 to continue.**
Lessons
40 @ 55 min (2.500 Att/wk)
Labs
8 @ 120 min
Special requirements
None
Prerequisites
one of
Corequisites
EE360

CS380 COMPUTER ORGANIZATION

  • 3.0 credit hours
  • (BS=0.0, ET=3.0, MA=0.0)
  • Version 2019-2
  • Archived
Scope
This course provides an introduction to computer organization and architecture. Emphasis is placed on understanding the implications of computer hardware, the operating system, and compilation system, on the performance and security of written code. Students learn basic C programming and the IA32 assembly language. Topics covered include basic computer organization, reverse engineering, buffer overflow, pipelining, the memory hierarchy, code optimization, and process creation. Students also gain exposure to topics in concurrency and parallel computing through the POSIX API. In addition to theory, students gain practical real-world experience using tools for profiling and debugging, including Valgrind and GDB. By the end of this programming intensive course, students will understand how the fundamental principles of computer organization impact their ability to write efficient code.
Lessons
30 @ 75 min (2.000 Att/wk)
Labs
0 @ 0 min
Special requirements
None
Prerequisites
one of
Corequisites
EE360

CS380 COMPUTER ORGANIZATION

  • 3.0 credit hours
  • (BS=0.0, ET=3.0, MA=0.0)
  • Version 2017-1
  • Archived
Scope
This course provides an introduction to computer organization and architecture. Emphasis is placed on understanding the implications of computer hardware, the operating system, and compilation system, on the performance and security of written code. Students learn basic C programming and the IA32 assembly language. Topics covered include basic computer organization, reverse engineering, buffer overflow, pipelining, the memory hierarchy, code optimization, and process creation. Students also gain exposure to topics in concurrency and parallel computing through the POSIX API. In addition to theory, students gain practical real-world experience using tools for profiling and debugging, including Valgrind and GDB. By the end of this programming intensive course, students will understand how the fundamental principles of computer organization impact their ability to write efficient code.
Lessons
40 @ 55 min (2.500 Att/wk)
Labs
0 @ 0 min
Special requirements
None
Prerequisites
one of
Corequisites
EE360

CS380 COMPUTER ORGANIZATION

  • 3.0 credit hours
  • (BS=0.0, ET=3.0, MA=0.0)
  • Version 2005-2
  • Archived
Scope
This course provides an introduction to computer organization and computer architecture. It builds on digital logic theory and devices (as studied in EE360) and procedural logic (as studied in CS301) to develop more complex systems. Emphasis is placed on understanding the basics of computer system organization, design, and operation. This includes the use of Register Transfer Language (RTL) to describe the movement of data in the computer and assembly language programming to control the system at a higher level. Additionally, cadets are introduced to modern engineering design tools through the use of VHDL (VHSIC Hardware Description Language) as they design, simulate, and program a simple processor in design projects. Other topics such as microprogram control, RISC architectures, arithmetic processing, input/output, and memory design are introduced. Cadets learn the fundamentals of SPARC Assembly Language to demonstrate instruction-level control of a real processor. Cadets are introduced to the C programming language and linking assembly language routines with higher-level languages. (Note: merged into EE375 eff 2005-1)
Lessons
35 @ 55 min (2.500 Att/wk)
Labs
5 @ 55 min
Special requirements
None
Prerequisites
all of CS301, EE360

CS380 COMPUTER ORGANIZATION

  • 3.0 credit hours
  • (BS=0.0, ET=3.0, MA=0.0)
  • Version 2003-2
  • Archived
Scope
This course provides an introduction to computer organization and computer architecture. It builds on digital logic theory and devices (as studied in EE365) and procedural logic (as studied in CS360) to develop more complex systems. Emphasis is placed on understanding the basics of computer system organization, design, and operation. This includes the use of Register Transfer Language (RTL) to describe the movement of data in the computer and assembly language programming to control the system at a higher level. Additionally, cadets are introduced to modern engineering design tools through the use of VHDL (VHSIC Hardware Description Language) as they design, simulate, and program a simple processor in design projects. Other topics such as microprogram control, RISC architectures, arithmetic processing, input/output, and memory design are introduced. Cadets learn the fundamentals of SPARC Assembly Language to demonstrate instruction-level control of a real processor. Cadets are introduced to the C programming language and linking assembly language routines with higher-level languages.
Lessons
35 @ 55 min (2.500 Att/wk)
Labs
5 @ 55 min
Special requirements
None
Prerequisites
one of

CS380 COMPUTER ORGANIZATION

  • 3.0 credit hours
  • (BS=0.0, ET=3.0, MA=0.0)
  • Version 1990-1
  • Archived
Scope
This course provides an introduction to computer organization and computer architecture. It builds on digital logic theory and devices (as studied in EE 365) and procedural logic (as studied in CS 360) to develop more complex systems. Emphasis is placed on understanding the basics of computer system organization, design, and operation. This includes the use of register transfer language (RTL) to describe the movement of data in the computer and assembly language programming to control the system at a higher level. Other topics such as microprogram control, RISC architectures, arithmetic processing, input/output, and memory design are introduced. Cadets learn the fundamentals of SPARC assembly language to demonstrate instruction-level control of a real processor. Cadets are introduced to the C programming language and linking assembly language routines with higher level languages.
Lessons
35 @ 55 min (2.500 Att/wk)
Labs
5 @ 55 min
Special requirements
None
Prerequisites
one of
Disqualifiers
EE475