28.10.2013 Views

Faculty of Mathematic Handbook,1987 - University of Newcastle

Faculty of Mathematic Handbook,1987 - University of Newcastle

Faculty of Mathematic Handbook,1987 - University of Newcastle

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Assembly Language and Operating Systems<br />

Systems Analysis<br />

Systems Design<br />

Numerical Analysis<br />

Linear Algebra<br />

Discrete <strong>Mathematic</strong>s<br />

Random Processes and Simulation<br />

Switching Theory and Logical Design<br />

Microprocessor Systems and Applications<br />

Subjects with a Unit Value <strong>of</strong> Three<br />

S<strong>of</strong>tware Engineering<br />

Advanced Programming<br />

Database Design<br />

Compiler Design<br />

Artificial Intelligence Programming Techniques<br />

Computer Graphics<br />

Computer Networks<br />

Theory <strong>of</strong> Computation<br />

Computer Science<br />

Management<br />

Management<br />

<strong>Mathematic</strong>s<br />

<strong>Mathematic</strong>s<br />

<strong>Mathematic</strong>s<br />

Statistics<br />

Elec & Comp Eng<br />

Elec & Comp Eng<br />

Computer Science<br />

Available in 1988<br />

Available in 1988<br />

Computer Science<br />

Available in 1988<br />

Computer Science<br />

Available in 1988<br />

<strong>Mathematic</strong>s<br />

680116 Project<br />

Projects are allocated from a list available from the Computer Science Office.<br />

680114 Introduction to Programming· D.W.E. Blatt<br />

Hours<br />

2 lecture hours per week for first semester,<br />

plus tutorials and practical work<br />

Examination<br />

Assignments and a 2·hour paper<br />

Content<br />

An introduction to structured programming and the design <strong>of</strong> algorithms. The high level<br />

language Pascal is covered in some detail. It is used to demonstrate the techniques <strong>of</strong><br />

structured programming and stepwise refinement. good coding style and documentation<br />

and methods <strong>of</strong> program debugging and testing. Topics include the formal definition <strong>of</strong><br />

high level languages, conditional statements, looping, case statements, the role <strong>of</strong> goto<br />

constructs, procedures, recursion and basic data structures.<br />

680112 Data Structures and Algorithms· B. Beresford·Smith<br />

Prerequisite<br />

Computer Science I or Introduction to Programming<br />

Hours<br />

2 lecture hours per week for one semester,<br />

plus tutorials and practical work<br />

Examination<br />

Assignments and a 2-hour paper<br />

Content<br />

Basic data structures and the design and analysis <strong>of</strong> algorithms which use these data<br />

structures are investigated. Topics covered will include a review <strong>of</strong> elementary data<br />

structures, an introduction to the concept <strong>of</strong> an abstract data type and the abstraction and<br />

implementation <strong>of</strong> data types including lists, stacks, queues, trees, graphs and sets.<br />

Particular attention is given to the problem <strong>of</strong> sorting and some common algorithm<br />

design techniques such as divide-and·conquer, backtracking and greedy algorithms.<br />

50<br />

Text<br />

References<br />

Aho, A.V., Hopcr<strong>of</strong>t, I.E. &<br />

Ullman, 1.0.<br />

Dahl, 0.1., Dijkstra, E.W. &<br />

Hoare, CA.R.<br />

Knuth, D.E.<br />

To be advised<br />

Data Structures and Algorithms<br />

(Addison·Wesley 1983)<br />

Structured Programming (Academic Press 1972)<br />

The Art <strong>of</strong> Computer Programming (vol. 1, 3)<br />

(Addison·Wesley 1968, 1973)<br />

Tenebaum, A.M. &<br />

Data Structures using Pascal (Prentice-Hall 1981)<br />

Augenstein, M.l.<br />

Welsh, I., Elder, J. & Bustard, D. Sequential Program Structures (prentice Hall 1984)<br />

Wirth, N. Algorithms + Data Structures = Programs<br />

(Prentice Hall 1976)<br />

680105 Assembly Language and Operating Systems - 1. Rosenberg<br />

Prerequisite<br />

Computer Science I or Introduction to Programming<br />

Hours<br />

2 lecture hours per week for one semester,<br />

plus tutorials and practical work<br />

Examination<br />

Assignments and a 2·hour paper<br />

Content<br />

This course is divided into two sections. The first section provides an introduction to<br />

computer organisation and assembly language programming. Topics covered include data<br />

representation, computer structures, registers, addressing modes, instruction sets,<br />

subroutines and the use <strong>of</strong> stacks.<br />

The second section <strong>of</strong> the course is an introduction to operating system principles. Topics<br />

covered include process management, synchronisation, memory management and file<br />

systems.<br />

Text<br />

Deitel, H.M. An Introduction to Operating Systems<br />

(Addison-Wesley 1984)<br />

680106 Comparative Programming Languages - Simon<br />

Prerequisite<br />

Computer Science I or Introduction to Programming<br />

Hours<br />

2 lecture hours per week for one semester,<br />

plus tutorials and practical work<br />

Examination<br />

Assignments and a 2·hour paper<br />

Content<br />

This course will examine the principles underlying the comparative study <strong>of</strong> programming<br />

languages. It will consider the essential control and data structure components <strong>of</strong> a<br />

programming language, and identify instances <strong>of</strong> those components in various languages.<br />

There will also be a brief introduction to the notions and techniques <strong>of</strong> program<br />

translation via compilers and interpreters.<br />

Several programming languages will be introduced and studied during the course. These<br />

will probably include FORTRAN, SNOBOL and C.<br />

Text<br />

Pratt, T.W. Programming Languages· Design and Implementation<br />

51

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!