This course is a continuation of the fundamental programming ideas introduced in CS 101. Larger software projects are implemented using the C language. Emphasis is based on file processing, compound datatypes, pointers, dynamic memory allocation, and associated algorithms such as linear linked list traversals. Three hours lecture, one hour laboratory. This course offers a study of computer architecture and organization with emphasis on quantitative analysis.
Boolean algebra is introduced to teach digital devices.
Students are required by the end of the semester to design and implement on paper a simple microprocessor. Micro-programming and conventional machine level are taught. Programming is expected in an assembly programming language. Industrial perspective of information technology. Requirements engineering and analysis.