Use the Tab and Up, Down arrow keys to select menu items.
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.
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)
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.
COSC121 or COSC131
ENEL206; both COSC208/ENCE208 and COSC221/ENCE221
Richard Clare
Lui Holder Pearson and Andrew Bainbridge-Smith
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.
King, K. N; C programming : a modern approach ; Norton, 1996.
Contact HoursLectures/Videos: 30 hoursTutorials: 12 hoursWorkshops: 0 hoursLaboratories: 24 hours Independent studyReview of lectures/videos: 30 hoursTest and exam preparation: 28 hoursAssignments: 30 hoursTutorial preparation: 6 hours Total 150
Domestic fee $1,030.00
International fee $5,750.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.
Maximum enrolment is 600
For further information see Electrical and Computer Engineering .