The course instructor is Dean Brock. The course lectures will be delivered on Monday and Wednesday from 9:45 AM to 11:00 AM in Ramsey 011 on the UNC Asheville campus and will be transmitted over the distance education network to sites at Craven Community College, Lenoir Community College, and UNC-Wilmington.
ECE 209 will also have a weekly one-hour problem session for all reception sites. In Asheville, the problem session will be led by Dean Brock and will be held on Friday from 9:45 AM to 10:35 AM in Ramsey 011.
All class handouts, including homework assignments, can be found through the following URLs (which ultimately all link to the same page):
In topics, assignments, exams, and schedule this distance education of ECE 109 will closely follow the large (100+ students) section of ECE 209 taught by James Tuck.
The required textbooks for the course will be Introduction to Computing Systems: From Bits and Gates to C (2nd edition), written by Yale N. Patt and Sanjay J. Patel and published by McGraw-Hill (ISBN 0-07-246750-9), and Algorithms in C: Parts 1-4 (3rd edition), written by Robert Sedgewick and published by Addison-Wesley (ISBN 0-201-31452-5).
The classic C programming book The C Programming Language (2nd edition), written by Brian Kernighan and Dennis Ritchie and published by Prentice Hall (ISBN 9780131103627), is also a recommended textbook for the course. (At UNCA, this book has been placed on reserve in Ramsey Library.)
Students will also need to purchase a subscription, at a cost of $15, to CodeLab to complete the homework and programming assignments required in this course.
This course continues your introduction to computing systems by focusing on programming. In particular, you will learn more about the C programming language, how its features can be implemented using a processor's instruction set, and how to use data structures in C to write programs to solve complex problems.
By the end of this course, you will be able to:
This class also includes an associated problem session, in which you will be given significant programming assignments. The problem sessions are designed to give you hands-on experience with C programming tools.
In order to take this class, you must have completed ECE 109 (Introduction to Computer Systems), with a grade of C- or better. There will be very little review of ECE 109 material. In particular, you should be very comfortable with the LC-3 instruction set and LC-3 assembly language before taking this class.
Grades will be based on points earned from two in-class exams, one final exam, homework, and programming assignments using the weights given in the followin table.
Two in-class exams | 33% |
One final exam | 27% |
Programming assignments | 20% |
Homework | 20% |
The following numerical scale will be used in assigning grades based on Score, the weighted score computed using the preceding table.
Score ≥ 97 | A+ |
Score ≥ 92 & Score < 97 | A |
Score ≥ 90 & Score < 92 | A- |
Score ≥ 87 & Score < 90 | B+ |
Score ≥ 82 & Score < 87 | B |
Score ≥ 80 & Score < 82 | B- |
Score ≥ 77 & Score < 80 | C+ |
Score ≥ 72 & Score < 77 | C |
Score ≥ 69 & Score < 72 | C- |
Score ≥ 65 & Score < 69 | D+ |
Score ≥ 60 & Score < 65 | D |
Score ≥ 57 & Score < 60 | D- |
Score < 57 | F |
There will no "rounding-up" in computing the final grade. A score of 68.8 is less than 69 and results in a grade of D+.
All exams will be closed book and closed notes. Often, a "reference sheet" will be provided which lists detailed information, such as the LC/3 instruction set or C programming language syntax.
Attendance at all exams is mandatory. Only University-approved excuses will be accepted, provided that they are accompanied by the appropriate official documentation. Makeup exams may be given for excused absences, at the discretion of the instructor. If you miss an exam without an acceptable excuse, you will receive a zero for that exam.
Many students in the distance education sections of NCSU ECE 209 will be taking courses at their receiving institutions and may find it difficult (or even impossible) to take the final exam at NCSU's regularly scheduled slot. Within the first few weeks of class, ECE 209 students will be polled to determine if there is a need to modify the final exam time to avoid these conflicts.
Do not ask for permission to take the final exam early or late because of family travel plans. These requests will not be granted.
Twenty homework assignments will be given during the semester. That works out to an average of about 1.5 assignments per week. About one-half of the homework assignments will be given during the lecture; and the remainder, during the problem sessions.
Homework assignments given as part of the lecture are to be completed within one-week. Generally, they will consist of a few problems similar to those given in the textbook. A random sample of homeworks will be graded for correctness while the remainder will be checked only for completeness.
Homework assignments given as part of the problem sessions should be completed during the session. If the problem session leader allows the assignment to be completed "off-line", the assignment must be turned in before the beginning of the next problem session or in-class exam.
There will be approximately five programming assignments during the semester. Each programming assignment must represent your own individual work. It is acceptable to talk with another student about approaches to the assignment or to discussing a particular programming problem that you are having with another student. It is not acceptable to modify someone else's program and submit it as your own or to submit a solution "found" on the Internet. If two (or more) students turn in an assignment with trivial differences, such as variable names, the students will be asked to justify the similarities of their submitted programs before the assignment will be graded.
The Director of Distance Education Programs at NCSU has told instructors that all "information about classes" sent via email should be sent to the official email address. This will be your address as listed on NCSU class registration rolls or your official email address at your "home" campus.
This policy is particularly pertinent for any email regarding information protecting by the federal Family Educational Right to Privacy Act, such as recorded grades on assignments or quizes. Your official email is the only account I will use to send legally protected information to you.
The best way to get in touch with me is to send email to brock@cs.unca.edu. If you need to see me, send me email to arrange an appointment.