COURSE DESCRIPTION

NAME OF INSTITUTION Lahore Garrison University
PROGRAM (S) TO BE EVALUATED Computer Science , Fall 2022
Course Description : Modern computer technology requires professionals of every computing specialty to understand both hardware (HW) and software (SW). The interaction between HW and SW also offers a framework for understanding the fundamentals of computing. In this course students will study topics such as Instruction Set Architecture, Basic Assembly Instructions, Addressing Modes, Computer Performance evaluation, Floating Point Data, Data Path Design for Single Cycle and Multiple Cycle Computers, Pipelined Data Path Basics, Hazards in Pipelining, Memory hierarchy design, storage and I/O. The Lab will have focus on GUI based Turbo Assembly Level Programming and some HW experiments
Course Code CSC346
Course Title Comp Organization & Assembly Lang
Credit Hours 3+1
Prerequisites by Course(s) and Topics 1. No Pre-requisites. As students first will be taught the preliminary course contents of CSC332 Digital Logic Design in order to help them understand the basics of hardware and software integration.
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 Daniyal Baig
URL (if any)
Current Catalog Description
Textbook (or Laboratory Manual for Laboratory Courses) “Assembly Language Programming and Organization of IBM PC, Ytha Yu, Charles Marut (International Edition), 1992
Reference Material “Mazidi M.A. - 80×86 IBM PC and Compatible Computers (Volumes I and II). Assembly Language, Design, and Interfacing - 1995
Course Goals To learn: Acquire the basic knowledge of computer organization,  computer architecture  assembly language  Understand the concepts of  basic computer organization  architecture, and assembly language techniques  Solve the problems related to computer organization and assembly language
Course Learning Outcomes (CLOs):
At the end of the course the students will be able to:DomainBT Level*
* 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)
WeekLectureTopics Covered
Week 1 1 Introduction to Assembly Language Programming Tutorial
2 Introduction to Registers in assembly language programming tutorial
Week 2 3 Types of registers in Assembly language programming tutorial
4 Addressing modes mov instruction interrupt and ASCII in Assembly language
Week 3 5 Program structure, syntax and program to print single character in assembly language
6 Install EMU MASM LINK & Run Assembly Program in dosbox to print character/ EMU 8086
Week 4 7 Program to print name with characters in assembly language programming
8 program to take input a character from user in assembly language programming
Week 5 9 Program to add two numbers in Assembly language Programming tutorial
10 Program to subtract two numbers in assembly language programming tutorial
Week 6 11 Program to input two numbers and add them in assembly language tutorial
12 Program to convert Capital letter to small in assembly, uppercase to lowercase
Week 7 13 Variables, data types, offset and lea in assembly language
14 Assembly program to print two strings on two different lines, Linefeed, Carriage return
Week 8 1 hours Mid Term
Week 9 15 Loop, Label, Inc and Program to print 0 to 9 in assembly language
16 Program to print capital letters from A to Z using loop in assembly language
Week 10 17 Mid Term Exam Material for assembly language programs, theory, papers, book and presentations
18 Flag Register Carry parity Auxiliary zero sign trap interrupt direction and overflow flag
Week 11 19 Jump, unconditional jump, conditional jump and compare cmp, jmp in assembly
20 Program to print the input number is equal or not in assembly language
Week 12 21 Array, dup and source index register in assembly language programming
22 Program to print an array using loop in assembly language programming
Week 13 23 String, Program to input a string in assembly language programming
24 Stack, push, pop and example program of push and pop in assembly language
Week 14 25 Program to swap two numbers in assembly language
26 Program to reverse a string in assembly language tutorial
Week 15 27 Nested loop, program to print pyramid in assembly language
28 Procedure, example program of procedure in assembly language
Week 16 29 Macro, example program for macro, macro vs procedure in assembly language
30 Signed and unsigned numbers, convert unsigned to signed numbers in assembly
Week 17 2 hours Final Term
Laboratory Projects/Experiments Done in the Course Assembly language project for each group
Programming Assignments Done in the Course Two programming assignments related to assembly language
Instructor Name Muhammad Daniyal Baig
Instructor Signature
Date