|
|
Gediz University, Computer Engineering
Department
Fall
Semester
2012
Lecture: Monday: 12:00 - 15:00,
D-114, Lab:
Friday:
09:00 - 11:00,
E-COMLAB-1 |
|
Instructor: Halûk
Gümüşkaya |
Teaching Assistant: |
Office:
D107 |
Office:
|
Office Hours: |
Office Hours: |
Phone:
0232-355 0000 - 2305 |
Phone: |
e-mail: haluk.gumuskaya@gediz.edu.tr |
e-mail:
|
|
|
|
|
|
|
|
|
Course Description
Microprocessor architecture and
operation. Data, address and control buses. Memory system design. Interface
units and their usage. Parallel/serial ports, timers, interrupts and
interrupt controllers, DMA services. Input and output peripherals and
devices. Assembly language programming. Microprocessor applications.
Microprocessor based systems and programming using Intels 8-bit, 16-bit and
32-bit processors.
Prerequisite
COM 251 Logic Design and Circuits
Lecture Schedule
(tentative)
|
The
syllabus (Course Information Form) given to students at
the beginning of the semester. |
|
The lecture and lab schedules
given in the syllabus are tentative and updated
here weekly. Look at
this table once a week. |
|
Almost
all the slides used during the semester will be available via the
following links or given to you. |
|
I may skip several slides during the lecture (The
slides given would be generally too much!). They are included in the
course material for completeness and to provide a good reference for your
future professional engineering life. |
|
To
follow the lecture and understand the materials presented in class
better, get the lecture slides and take the print-outs of them, and
please bring them
to class. |
|
Purposes for bringing slides to class: 1) To allow better concentration in lecture by reducing
note-taking pressure and to provide a study-aid before and after lecture. |
|
2) You can
take your notes on these slides and be active
during the lecture. You digest material much better when you actively
take notes from step-to-step demonstrations given by your
instructor than by just sitting and watching slides. |
|
Disclaimers: (a) I
may not follow these
slides exactly in class (b) I may also use
the whiteboard and give some extra notes which will not be posted here
as needed in class (c) Students are responsible for what I say
and teach in class. (d) Reading these slides is
not a substitute for attending lecture. |
W |
D |
Lec |
Topics Covered |
Lab |
HW |
1 |
24/9 |
|
Registration Week |
|
|
2 |
1/10 |
Lec0
Lec1 |
Course Overview
Computer Organization and Introduction to Microprocessors:
Views of Computer Systems,
Processor Based System, Processor, Memory, Input/Output, Interconnection: The Glue, Historical Perspective |
|
|
3 |
8/10 |
Lec2 |
Memory Basics
and Memory System Design |
|
|
4 |
15/10 |
Lec3 |
Introduction to Microprocessor
Architecture and Operation |
|
|
5 |
22/10 |
|
Introduction to Microprocessor
Architecture and Operation (Continued) |
|
|
6 |
29/10 |
|
No classes,
Kurban Bayram week and Cumhuriyet Bayramı |
|
|
7 |
5/11 |
Lec4 |
Introduction to Intel 80x86
Architecture: Brief History of the x86 Family, Typical
Pins of the x86 Processor, Internal Processor Architecture |
|
|
8 |
12/11 |
|
Introduction to Intel 80x86
Architecture: Memory Architecture, I/O Operations, The
Microprocessor-Based Personal Computer System |
|
|
9 |
19/11 |
|
Midterm Exam |
|
|
10 |
26/11 |
|
Elements of Assembly Language
Programming: Assembly Language Statements, How to Assembly,
Link, and Run a Program, Where are the Operands?: An
Introduction to Addressing Modes |
|
|
11 |
3/12 |
|
Addressing Modes: 32-Bit and
16-Bit Addressing, Simple Addressing Modes, Direct
Addressing Mode, Register Indirect Addressing Mode, Based
and Indexed Addressing Modes, Based-Indexed Addressing Mode |
|
|
12 |
10/12 |
|
Basic Instructions: Data
Transfer Instructions, Integer Addition and Subtraction,
Multiplication, Division, Addition and Subtraction of Larger
Numbers
32-Bit Mode Programming
Examples using MASM 10.0 in the MS Visual C++ 2010
Express. The Windows I/O ASM library of the textbook is used
in the examples. |
|
|
13 |
17/12 |
|
Branching and Looping:
Unconditional Jumps, Conditional Jumps, Compare Instructions
and If Structures, Implementing Loop Structures, For Loops
in Assembly Language, Arrays |
|
|
14 |
24/12 |
|
Procedures: The 80x86
Stack, Procedure Body, Call and Return, Parameters and Local
Variables, Call and Return, Parameters and Local Variables |
|
|
15 |
31/12 |
|
Project
Demonstrations |
|
|
Textbooks
|
The x86 PC: Assembly Language, Design, and Interfacing, 5/E, M.
A. Mazidi, J. G. Mazidi, D. Causey, Prentice Hall, 2010.
|
|
Assembly Language for x86
Processors, 6/E, Kip R. Irvine,
Prentice Hall, 2011. |
|
Intel Microprocessors, 8th Ed., B. B. Brey, Prentice Hall, 2009.
|
Recommended
|
Introduction to 80x86
Assembly Language and Computer Architecture, 2nd Ed., R.
C. Detmer, Jones & Bartlett Pub, 2010. |
|
Fundamentals of
Computer Organization and Design,
S. P. Dandamudi, Springer, 1060 pages, 2003. |
|
Mikroişlemciler ve
Bilgisayarlar, 6. Basım, H. Gümüşkaya, ALFA, 2011. |
Tools and Development Environments
|
32 and 64-bit x86 Assembler, Linker and Debugger: MASM
10.0, Link,
Windbg, MS Visual C++ 2010 Express
|
Grading
15 % : Labs
20 % : Midterm Exam I
25 % :
Midterm Exam II
40 % : Final Exam
|