ENCE260-24S2 (C) Semester Two 2024

Computer Systems

15 points

Details:
Start Date: Monday, 15 July 2024
End Date: Sunday, 10 November 2024
Withdrawal Dates
Last Day to withdraw from this course:
  • Without financial penalty (full fee refund): Sunday, 28 July 2024
  • Without academic penalty (including no fee refund): Sunday, 29 September 2024

Description

This is an introductory course to computer systems and is a mixture of computer programming in C, computer architecture, and embedded systems.

In the Introduction to C programming module during Term 3, you will learn to write C programs on desktop machines. C was originally developed as an alternative to assembly language for low level programming tasks like operating systems (e.g., Windows, Linux, or MacOS) and embedded computing (the computers inside mobile phones, cars, robots, and anything else "smart"). C remains the most widely used language in the embedded systems community and is also of importance to computer scientists as the language used for implementing many high performance libraries and high-level language interpreters and compilers. For example, the standard Python interpreter and the Linux operating system are both written in C.

The Computer Architecture module is delivered in parallel with the C programming in Term 3, and with Embedded Systems in Term 4, so that you can learn about how the hardware works at the same time as you learn how to write programs for that hardware. During the Computer Architecture module you'll learn about the basic operations performed by the fundamental building blocks of computer hardware, and how to combine those simple operations to create more complex behaviour. You'll also learn how the C language programs you're writing relate to and control the underlying computer architecture.

The Introduction to Embedded Systems module in Term 4 extends your C programming skills with application to a small, dedicated computer board. This embedded system uses a microcontroller (AVR by Atmel) and has just a few buttons and Light Emitting Diodes (LEDs) for input and output. You’ll learn how to combine your new knowledge of computer hardware and C programming to sense button inputs, control LED outputs, and to write programs that use the inputs and outputs to do useful or interesting things. Groups of two students will complete a small, embedded system project during Term 4.

Learning Outcomes

  • At the conclusion of this course you should be able to:

  • LO1: Write structured programs in the C Programming language (WA1, WA5)

  • LO2: Identify and analyse basic core hardware components, and how these execute software (WA1)

  • LO3: Understanding the use of an embedded microcomputer and interfacing with common peripheral devices (WA1, WA5)

  • LO4: Design a basic program on an embedded microcontroller system (WA2, WA3, WA5)

  • LO5: Work collaboratively with a colleague on an embedded software project (WA9, WA10)
    • University Graduate Attributes

      This course will provide students with an opportunity to develop the Graduate Attributes specified below:

      Critically competent in a core academic discipline of their award

      Students know and can critically evaluate and, where applicable, apply this knowledge to topics/issues within their majoring subject.

      Employable, innovative and enterprising

      Students will develop key skills and attributes sought by employers that can be used in a range of applications.

Prerequisites

Restrictions

ENEL206; both COSC208/ENCE208 and COSC221/ENCE221

Timetable 2024

Students must attend one activity from each section.

Lecture A
Activity Day Time Location Weeks
01 Wednesday 12:00 - 13:00 E8 Lecture Theatre
15 Jul - 25 Aug
9 Sep - 20 Oct
02 Wednesday 12:00 - 13:00 E9 Lecture Theatre
15 Jul - 25 Aug
9 Sep - 20 Oct
Lecture B
Activity Day Time Location Weeks
01 Thursday 11:00 - 12:00 E8 Lecture Theatre
15 Jul - 11 Aug
9 Sep - 20 Oct
02 Thursday 11:00 - 12:00 E9 Lecture Theatre
15 Jul - 11 Aug
9 Sep - 20 Oct
Lecture C
Activity Day Time Location Weeks
01 Friday 09:00 - 10:00 E8 Lecture Theatre
15 Jul - 21 Jul
9 Sep - 15 Sep
02 Friday 09:00 - 10:00 E9 Lecture Theatre
15 Jul - 21 Jul
9 Sep - 15 Sep
Computer Lab A
Activity Day Time Location Weeks
01 Tuesday 08:00 - 10:00 134
Jack Erskine 133
15 Jul - 25 Aug
9 Sep - 20 Oct
02 Monday 14:00 - 16:00 134
Jack Erskine 133
15 Jul - 25 Aug
9 Sep - 20 Oct
03 Friday 16:00 - 18:00 134
Jack Erskine 133
15 Jul - 25 Aug
9 Sep - 20 Oct
04 Wednesday 13:00 - 15:00 134
Jack Erskine 133
15 Jul - 25 Aug
9 Sep - 20 Oct
05 Friday 14:00 - 16:00 134
Jack Erskine 133
15 Jul - 25 Aug
9 Sep - 20 Oct
Tutorial A
Activity Day Time Location Weeks
01 Thursday 14:00 - 15:00 Rata 222 & 223 Drawing Office
22 Jul - 25 Aug
9 Sep - 20 Oct
02 Wednesday 10:00 - 11:00 Rata 222 & 223 Drawing Office
22 Jul - 25 Aug
9 Sep - 20 Oct

Examinations, Quizzes and Formal Tests

Test A
Activity Day Time Location Weeks
01 Monday 19:00 - 21:00 Jack Erskine 131 Lab 1
9 Sep - 15 Sep
02 Monday 19:00 - 21:00 Jack Erskine 133 Lab 2
9 Sep - 15 Sep
03 Monday 19:00 - 21:00 Jack Erskine 134 Lab 3
9 Sep - 15 Sep
04 Monday 19:00 - 21:00 Jack Erskine 136 Lab 4
9 Sep - 15 Sep
05 Monday 19:00 - 21:00 Jack Erskine 001 Computer Lab
9 Sep - 15 Sep
06 Monday 19:00 - 21:00 Jack Erskine 010 Computer Lab
9 Sep - 15 Sep
07 Monday 19:00 - 21:00 Jack Erskine 248 Computer Lab
9 Sep - 15 Sep
08 Monday 19:00 - 21:00 Rata 342 CAD Lab
9 Sep - 15 Sep
09 Monday 19:00 - 21:00 Rata 216 CAD Lab
9 Sep - 15 Sep
10 Monday 19:00 - 21:00 Civil - Mech E201 Mech Computer Lab
9 Sep - 15 Sep

Course Coordinator

Richard Clare

Lecturers

Lui Holder Pearson and Andrew Bainbridge-Smith

Assessment

Assessment Due Date Percentage 
Test 20%
Assignment 1 10%
Assignment 2 10%
Quizzes 10%
Final Exam 50%


The examiners will award a failing grade to students who score less than 45% of the maximum for the Test and Final Examination combined. More formally, (TestPercent * 0.2 + FinalExamPercent * 0.5) / 0.7 must be greater than or equal to 45 for a pass mark to be awarded. This note is put in place to ensure that each student has adequately shown to the examiners they have gained some mastery of the topic.

Textbooks / Resources

Recommended Reading

King, K. N; C programming : a modern approach ; Norton, 1996.

Additional Course Outline Information

Mahi ā-Ākonga | Workload (expected distribution of student hours, note 15 points = 150 hours):

Contact Hours

Lectures/Videos: 30 hours
Tutorials: 12 hours
Workshops: 0 hours
Laboratories: 24 hours

Independent study

Review of lectures/videos: 30 hours
Test and exam preparation: 28 hours
Assignments: 30 hours
Tutorial preparation: 6 hours

Total 150

Indicative Fees

Domestic fee $1,059.00

International fee $6,000.00

* All fees are inclusive of NZ GST or any equivalent overseas tax, and do not include any programme level discount or additional course-related expenses.

Limited Entry Course

Maximum enrolment is 600

For further information see Electrical and Computer Engineering .

All ENCE260 Occurrences

  • ENCE260-24S2 (C) Semester Two 2024