Resources
Sample Exams
- Sample Exam: [PDF] [Postscript] Example answers for the sample exam. [TXT]
- 2009 Semester 1 Exam: [PDF] [Postscript]
- 2009 Semester 2 Exam: [PDF] [Postscript]
- 2010 Semester 1 Exam: [PDF] [Postscript]
- 2010 Semester 2 Exam: [PDF] [Postscript]
- 2011 Semester 1 Exam: [PDF] [Postscript]
- 2011 Semester 2 Exam: [PDF] [Postscript]
MIPS programming
- Appendix A from Hennessy & Patterson's "Computer architecture: the hardware / software interface", which describes the MIPS instruction set, available as PDF or Postscript.
- Documentation for SPIM, the MIPS simulator program, available as PDF or Postscript. This also includes documentation of the MIPS instruction set.
- A getting started guide for xspim, the GUI interface to SPIM, available as PDF or Postscript.
- A list of the instructions in the MIPS instruction set, together with descriptions of what they do.
C Texts
- Stephen Kochan. Programming in C The recommended textbook, a good introduction to C and Make.
- Brian Kernighan and Dennis Ritchie. The C programming language The language reference manual, not for learning but great for intricacies and something to keep your entire career.
C programming style
- Recommendations from the book "The elements of programming style" by Kernighan and Plauger.
- Recommended C style and coding standards, from Bell Labs Indian Hill.
- Clifford on programming style.
Vim
Vim is a powerful text editor ideal for programming tasks. Some resources for vim are listed below.- Vim home page
- Vim Introduction and Tutorial
- A cheat sheet showing the command codes, and a tutorial on its use.
- Common Vim commands
Subversion
- Version control with subversion, a book about subversion that is freely available over the web.
Remote access
- If you want to login to the CSSE servers from home to complete lab work or work on your projects you can use PuTTy if your using Windows or SSH from the command line if you are using Mac OS X or Linux.
- When using PuTTy enter "student-random.csse.unimelb.edu.au" as the server hostname / address, port 22 and ensure the connection type is SSH - you will be prompted for your University username and password.
- When using SSH from the command line, simply launch with: "ssh youruniversityusername@student-random.csse.unimelb.edu.au" - you will be prompted for your University account password.
Caches
- Some slides on how caches work.
- The wikipedia page on caches in general.
- The wikipedia page on caches used by CPUs. Be warned that it has information about many different types of caches, most of which are not relevant to the project, and that the diagram showing the cache row structure is incorrect; cache entries do not actually store either the index or the displacement.
Example Programs
All the example programs used in the lecture slides:- array_as_arg1.c
- array_as_arg1_notes.c
- array_as_arg2.c
- bad_scanf.c
- buffer_overflow1.c
- buffer_overflow1_notes.c
- buffer_overflow2.c
- buffer_overflow2_notes.c
- buffer_overflow3.c
- buffer_overflow3_notes.c
- buffer_overflow_explore.c
- call_by_ref.c
- call_by_ref_set.c
- char_overflow.c
- comma.c
- day_table.c
- discard_const.c
- enum_add.c
- facn.c
- fib.c
- fib_notes.c
- float_bad_add.c
- hello.c
- hello_star.c
- hello_star_notes.c
- identity.c
- identity_notes.c
- large_unsigned.c
- list1.c
- list2.c
- list2_notes.c
- list3.c
- list4.c
- list5.c
- list5_notes.c
- list6.c
- list6_notes.c
- max.c
- max1.c
- max1_notes.c
- max2.c
- max2_notes.c
- max3.c
- max3_notes.c
- max_bad.c
- multidimensional.c
- party_day.c
- printf1.c
- printf_int_sizes.c
- printf_int_sizes_notes.c
- printf_least.c
- prompt.c
- quadratic.c
- quadratic2.c
- quadratic2_notes.c
- quadratic_break.c
- quadratic_continue.c
- quadratic_loop.c
- quadratic_notes.c
- quadratic_repeat.c
- realloc1.c
- realloc1_notes.c
- realloc2.c
- scanf1.c
- static_local.c
- string_as_array.c
- strlen_hello.c
- strlen_hello_notes.c
- strlen_hello_s.c
- strlen_hello_s_notes.c
- strlen_ptr1.c
- strlen_ptr1_notes.c
- strlen_ptr2.c
- struct_align.c
- ternary.c
- union_align.c
- unsigned_subtract.c
- word_list.c
Multi Module Example Programs
The example from the slides The match example from the slidesLast update: Monday, 14-May-2012 10:45:54 EST
Maintained by: Peter Stuckey
