CSC205: Introduction to Computer Science 4 credits (24-10-6)

Objectives

To provide fundamental Computer Science concepts essential to computing-related disciplines.

Contents

History of computers; types of today's computers; some application areas of computers; defining Computer Science; related disciplines. Assembly level machine organisation and architecture: Block structure, Virtual Machines, Von-Neumann Architecture, Stages/cycles in processing machine instructions; Mention of Harvard Architecture. Machine-level representation of data: Bits, bytes, and words. Numeric data representation and number bases. Fixed- and floating-point systems. Signed and twos-complement representations; binary arithmetic; coding of numeric and non-numeric data; ASCII/EBCDIC character sets; Binary coded Decimal (BCD); Data compression; Data communication errors (parity bits, CRC, encryption). Operation of components (CPU, memory, peripheral devices). Logic gates in simple computer circuits (e.g. flip-flops and adders); Notions on the coding and processing of instructions: machine/assembly language coding; operand addressing schemes; role of instruction set, general registers and processor status word. Software Systems concepts: Operating Systems, Computer Networking; Programming Languages and Programming Language concepts; Software Engineering (Software Life Cycle, Design methodology, Testing, Documentation).

Introductory presentation and use of Unix-based and Windows-based operating systems.