Course Code |
CSC346 |
Course Title |
Comp Organization & Assembly Lang |
Credit Hours |
3+1 |
Prerequisites by Course(s) and Topics |
None |
Assessment Instruments with Weights (homework, quizzes, midterms, final, programming assignments, lab work, etc.) |
SESSIONAL (Quizzes, Assignments, Presentations) =25 %
Midterm Exam =25 %
Final Exam = 50%
|
Course Coordinator |
Muhammad Omer Aftab |
URL (if any) |
|
Current Catalog Description |
|
Textbook (or Laboratory Manual for Laboratory Courses) |
David Patterson and John Hennessy, “Computer Organization and Design: The Hardware/Software Interface”, 4th ed., Morgan Kaufmann, 2011, ISBN10: 0123747503. • David Patterson and John Hennessy, “Computer Architecture: A quantitative approach”, 4th ed., Morgan Kaufmann, 2011, ISBN-10: 0123747503. |
Reference Material |
|
Course Goals |
By the end of this course, students should be able to: Understand the basics of computer hardware and how software interacts with computer hardware. Analyze and evaluate computer performance Understand how computers represent and manipulate data Understand basics of Instruction Set Architecture (ISA) Design data format, instruction format, instruction set, addressing modes, bus structure, input/output, memory, Arithmetic/Logic unit, control unit, and data, instruction and address flow |
Course Learning Outcomes (CLOs): |
At the end of the course the students will be able to: | Domain | BT Level* |
Understand the basics of computer hardware and how software interacts with computer hardware. |
|
|
Analyze and evaluate computer performance |
|
|
Understand basics of Instruction Set Architecture (ISA) |
|
|
Design data format, instruction format, instruction set, addressing modes, bus structure, input/output, memory, Arithmetic/Logic unit, control unit, and data, instruction and address flow |
|
|
* BT= Bloom’s Taxonomy, C=Cognitive domain, P=Psychomotor domain, A= Affective domain |
|
|
|
Topics Covered in the Course, with Number of Lectures on Each Topic (assume 15-week instruction and one-hour lectures) |
Week | Lecture | Topics Covered |
Week 1 |
1 |
Introduction to Assembly Language |
|
2 |
Introduction to Assembly Language Programing |
Week 2 |
3 |
Arithmetic operations |
|
4 |
User Inputs and Character printing |
Week 3 |
5 |
Jumps-Unconditional Jumps |
|
6 |
Strings with LEA |
Week 4 |
7 |
Strings with Offset |
|
8 |
Division of unsigned numbers |
Week 5 |
9 |
Array |
|
10 |
Array |
Week 6 |
11 |
Conditional Jumps |
|
12 |
Conditional Jumps |
Week 7 |
13 |
Flag Registers |
|
14 |
Flag Registers |
Week 8 |
1 hours |
Mid Term |
Week 9 |
15 |
Password code using conditional jumps |
|
16 |
Stack |
Week 10 |
17 |
Stack |
|
18 |
Nested Loops |
Week 11 |
19 |
Nested Loops |
|
20 |
Nested Loop |
Week 12 |
21 |
Stack with Nested Loops |
|
22 |
Procedures |
Week 13 |
23 |
Procedures |
|
24 |
Procedures |
Week 14 |
25 |
Macro |
|
26 |
Macro |
Week 15 |
27 |
Introduction to Graphics |
|
28 |
Graphics |
Week 16 |
29 |
Graphics |
|
30 |
Graphics |
Week 17 |
2 hours |
Final Term |
|
Laboratory Projects/Experiments Done in the Course |
|
Programming Assignments Done in the Course |
|