Teaching

Information & Computer Science (ICS)

Term 083

ICS 101 - Computer Programming (LAB 53)

An overview of the computer system, its main components and their functions. Programming in FORTRAN 77 with emphasis on a modular and structured problem solving approach that includes program coding, algorithm design, debugging and testing. Various programming problems will be illustrated as examples in the class.

Term 073

ICS 103 - Computer Programming in C (LAB 53)

Overview of computer components, Problem solving, Introduction to a typical programming language (i.e. C), Basic data types, Arrays and strings, Structures, Procedures and functions, Simple algorithm development.

ICS 101 - Computer Programming (LAB 52)

An overview of the computer system, its main components and their functions. Programming in FORTRAN 77 with emphasis on a modular and structured problem solving approach that includes program coding, algorithm design, debugging and testing. Various programming problems will be illustrated as examples in the class.

Term 071

ICS 253 - Discrete Structure I

The course covers various topics in discrete mathematics that are widely used in Computer Science. Discrete mathematics deals with (finite or infinite) objects that are disconnected like books, tables, integers, graphs, and trees. The course is divided into three main areas: logic and mathematical reasoning, counting and combinatorial techniques, and graphs and trees.

ICS 233 - Computer Architecture and Assembly Language (LAB 51)

Machine organization; Assembly language: addressing, stacks, argument passing, arithmetic operations, decisions, modularization; Input/Output Operations and Interrupts; Memory Hierarchy and Cache memory; Pipeline Design Techniques; Super-scalar architecture; Parallel Architectures.

Term 062

ICS 233 - Computer Architecture and Assembly Language (LAB 51)

Machine organization; Assembly language: addressing, stacks, argument passing, arithmetic operations, decisions, modularization; Input/Output Operations and Interrupts; Memory Hierarchy and Cache memory; Pipeline Design Techniques; Super-scalar architecture; Parallel Architectures.