DEPARTMENT OF COMPUTER ENGINEERING
Course Code: CmpE 101
Course Title: Foundations of Computer Engineering
Course Credit: (3 , 1) 3
Semester: 2007 - 2008 Fall
Course Website: http://cmpe.emu.edu.tr/cmpe101/ (to be updated); Course Description.
Course Mailing List: cmpe101@students.emu.edu.tr
- Please activate your EMU student e-mail account, and
- Read my welcome remarks.
- Please consider this Guide on Netiquette: TXT or HTML versions.
Faculty:
| Group #1 | Group #2 | Group #3 | |
| Faculty Member: | Atilla ELÇİ
(Course Coord.) |
Atilla ELÇİ
(Course Coord.) |
Yıltan BİTİRİM |
| Office No. & Telph.: | 208 & 2843 | 208 & 2843 | 203 & 2182 |
| E-mail: | atilla.elci | atilla.elci | yiltan.bitirim |
| Website: | ./aelci/ | ./aelci/ | ./bitirim/ |
| Lab Coordinator: | Ahmed Y. Mahmoud | Ahmed Y. Mahmoud | Ahmed Y. Mahmoud |
| Office No. & Telph.: | 125, 2831 | 125, 2831 | 125, 2831 |
| E-mail: | ahmed.mahmoud | ahmed.mahmoud | ahmed.mahmoud |
| Lab Group Assistant: | Ahmed Y. Mahmoud | Ahmed Y. Mahmoud | Ahmed Y. Mahmoud |
| Office No. & Telph.: | 125, 2831 | 125, 2831 | 125, 2831 |
| E-mail: | ahmed.mahmoud | ahmed.mahmoud | ahmed.mahmoud |
| Lab Assistant: | Öykü Akaydın | Zahra A. Sharghi | Ruhsan Önder |
| Office No. & Telph.: | 106, 1630 | 105, 1629 | 205, 2832 |
| E-mail: | oyku.akaydin | zahra.sharghi | ruhsan.onder |
| Labs at CmpE ??? | 137 | 137 | 137 |
| Labs timing | Mon 12:30 | Tue 14:30 | Wed 12:30 |
Textbook:
Hanly, J. R. and Koffman, E. B.: Problem Solving and Program Design in C, 5th ed., Addison Wesley, 2006. Source code is available via anonymous FTP to the book's student site.
Other References (many are available at the EMU Bookstore and Library):
1. Lauckner, K. F. and Lintner, M. D.: The Computer Continuum, 2nd ed., Prentice Hall, 2001.
2. Kumar, R. and Agrawal, R.: Programming in ANSI C, West Publ., 1992.
Many books on programming and languages are available also as e-book in the ACM Books; access is free to ACM student members. ACM student membership is $18/year for EMU students. Check and follow my note on ACM membership. There are many free-to-members ACM Books and ACM Courses over the Web on C/C++, Scripting languages, C#, Java, Perl, Visual Studio .NET, and .NET Framework. Check TOP TEN courses of the last month.
Try Wikibooks for books on try C, Programming Languages, Computer Science, or other programming and language topics, such as, Domain-Specific Languages, logic programming, ... bookshelves.
Similarly, you may have access to relevant e-books sources such as EBRARY, SAFARI, etc as they become available from time to time through EMU Library online databases.
This course introduces the student to the fundamental concepts of computer engineering.
Participant of the course will be required to carry out practical work in terms of home works, labs and possibly short projects.
Topics covered include: Computers and information processing - notion of computers, concepts of data and information, applications of computers, history of computing. Computer hardware -CPU, memory, input/output interface, secondary storage, ports, types of computer systems, computer software -system software, utilities, application software, data communication, an overview of operating systems. General problem solving concepts: basic data types, constants and variables, basic operators and expressions, algorithms, pseudocodes, and flow charts, sequential, and conditional problem solving (IF statements and CASE logic), looping (WHILE/WHILE-END, REPEAT-UNTIL, FOR structures), formatted output, examples in C programming language. (Pre-requisite: none)
Below is
a tentative outline for this course. We reserve the right to adjust the pace and
topics of the class as the semester progresses.
Week 1 Intro to computers and computing (see
Intro-CmpE101.rar)
Week 2 Computer hardware and software (see
Intro-CmpE101.rar)
Week 3 Intro to C and problem solving techniques (Ch. 1, 2)
Week 4 Data types, expressions (Ch. 2)
Week 5 Principles of top-down design (Ch. 3)
Week 6 Principles of structured programming
Week 7 Computing profession, professional ethics
Week 8 Review, tutorial, Q&A
Week 9 Midterm week
Week 10 Selection structures: if (Ch. 4)
Week 11 Selection structures: switch (Ch. 4)
Week 12 Repetition structures and loops (Ch. 5)
Week 13 Repetition structures and loops (Ch. 5)
Week 14 Programming languages landscape
Week 15 Review, tutorial, Q&A
Week 16 Finals
Courseware material where available is indicated above.
Weeks 1 & 2 lecture presentations are attached to the schedule. The full set of presentations for Lauckner & Lintner are available to interested students. Please contact the instructor.
Various supplemental presentations on subjects of interest in the field have been prepared. They are meant to enlighten our students and help them grasp the extent and nature of the computer related professions. Some were aired in the class and all are made available through the official course website.
List
Practice on C programming language and Visual Studio 6 will be carried out.
Any conduct that attempts to gain unfair academic advantage is considered academic dishonesty. Copying homework and programs, cheating during exams, substituting for another person are some examples of academic dishonesty. Cases of academic dishonesty will not be tolerated and will be punished according to EMU's disciplinary policies.
Also consider this recent presentation on Professional Ethics and Plagiarism.
The Guidelines for Proper Conduct with respect to HWs, quizzes, and labs will be announced here.
v Midterm Exam 1: 25
v Midterm Exam 2: 25
v Labs + homeworks: 10
v Attendance 05 ← Bonus
v Final Exam: 40
Ø TOTAL: 100 %
Office Hours:
For A. ELCI: 14:40 – 15:30 on Mondays & Wednesdays
Other faculty: Please check their home pages.
Attendance: Absolutely required; any student with poor attendance record will be given NG.
Five roll calls will be taken of which each is worth one bonus point.
Missed Exams: A student missing an exam should provide a substantiated and valid excuse within three days following the exam. Only for them one make-up exam will be administered at the end of the semester following the final exam period.
Dictionary for tech jargon & acronyms.
A successor to C? Check out D Language from its creator.
Books in Turkish:
Kid's Programming Language (KPL) at Microsoft site; free development platform (IDE, tutorial and user's guide).
KAREL &
KAREL++, the Robot Language: easy introduction to programming by novices.
Shooting yourself in the foot: the programming language way!
Please report any broken link.
Atilla Elçi
Last update: Jan. 3, 2008.