0% found this document useful (0 votes)
71 views

S24 COAL Lab Outline

Uploaded by

Saad Malik
Copyright
© © All Rights Reserved
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
71 views

S24 COAL Lab Outline

Uploaded by

Saad Malik
Copyright
© © All Rights Reserved
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 4

University of Central Punjab

Faculty of Information Technology

BSCS
PROGRAM (S) TO BE
EVALUATED
A. Course Description
Course Code CSCS3543
Course Title Computer Organization and Assembly Language (Lab)
Credit Hours 1
Assessment Instruments with Final Lab Exam 40%
Weights (homework, quizzes, Lab Midterm 20%
midterms, final, programming Graded Labs 35%
assignments, lab work, etc.) Class participation 05%
Lab Total 100%
Course Instructor
Course Coordinator Dr. Adnan Ghafoor
Office Hours
Plagiarism Policy All the parties involved in first cheating case will be awarded Zero for that
evaluation. Afterwards, all students involved in the second instance will be
awarded ZERO in the entire evaluation category.
Marks shall be up-loaded on portal and can be contested within a week or
would be considered final.
Course Tools Emu8086
Course Description The objective of this course is to understand the organization of
microprocessor for instance Intel x86 in terms of assembly language
instruction. This course primarily focuses on the detailed analysis and
working of microprocessor.

Teaching-Learning Methodology More emphasis will be on coding assignments and practical lab
sessions. Regular and online quizzes will be held to help students
improving their understanding. Extra tutorial session will be conducted
to increase problem solving kills.

Textbook Assembly language, Design and Interfacing 4th edition, Mazidi &
Mazidi
https://bit.ly/3VqG76k
Reference Material Assembly Language Intel based Computers, 4th Edition, by KIP, R,
IRVINE
 Intel Microprocessors, 8th edition, by Barry B. Brey
Art of Assembly,
Topics Covered in the Course, with Attached
Number of Lectures on Each Topic
(assume 15-week instruction and one-
hour lectures)

1 NCEAC.FORM.001.C
Programming Assignments Done in Yes (Assembly language Programs)
the Course
Class Time Spent on (in credit hours) Theory Problem Solution Social and Ethical Issues
Analysis Design
1 0.5 1 0.5
Oral and Written Communications Yes

CLO CLO STATEMENT Bloom’s PLO


Taxonomy Level
1 Solve real-world problems skillfully with precision using programming P3 5
constructs learned in theory with the course toolkit

Evaluation
Lecture Topics Book Reference
Used

1st
eview of the number system arithmetic and conversions
Introduction to 8086 processor Irvine: 2.1.1
Basic Computer Architecture
General purpose registers Art of Assembly:
nd Data movement instructions 3.1
2
Basic arithmetic operations addition/subtraction
Segment registers Brey: 2.1
Index registers
Purpose of these registers Mazidi: 0.2
Programing Model of X86
Assembler Directives (.model, .stack, .data, .code, .exit),
Basic program structure, Irvine: 2.2.2
Data movement among registers using (MOV instruction)
Art of Assembly:
3 rd 4.1
Register addressing mode
Immediate addressing mode Brey: 2.1
Direct addressing mode
Indirect addressing mode Mazidi: 1.2
Logical to Physical Address Conversion
Examples with MOV instruction
ALU instructions (ADD, SUB, AND, OR, NOT, NEG, XOR,
ADC, SBB) Irvine: 14.1.5
MUL & DIV instructions
Flag register Mazidi: 1.4
4th Graded Lab 1
Programming practice questions Mazidi: 2.1
Data types
Variable declaration and initialization Irvine: 14.2.2
ALU operations on variables
Irvine: 12.3.6

Art of Assembly:
Arrays & Loops 4.6
(Labels and Loop instruction)
5th Base plus index addressing mode Brey: 3.1
Base relative plus index addressing mode
Jump & Branch instructions Art of Assembly:
4.7

Mazidi: 1.6
6th Art of Assembly:
Bit Manipulation
2 NCEAC.FORM.001.C
6.6

Mazidi: 3.5
Shift: Arithmetic and Logical Shift
Rotations
Bit Masking Irvine:
Selective Set
Selective Clear Mazidi: 3.6
Selective Complement Art of Assembly:
9.6

Brey:
Stack
Introduction to Stack
Saving and restoring variable in stack Art of Assembly:
th Subroutines 8.7
7 Graded Lab-2
CALL and RET statements
Simple subroutines Brey: 6.3
Parameter Passing through Stack
Return value
8th Revision Week
MIDTERM
MIDTERM (Review)

Software Interrupts
Basic introduction of interrupts Irvine: 14.1.4
BIOS and DOS interrupts for printing on screen and reading keys
9th
Software Interrupts Mazidi: 4.1
Explain the concept of IVT (IVT)
Exceptions (Handling) Mazidi: 14.1
Hooking Divide by Zero & Overflow exceptions
Programming Exercise
Hardware Interrupts
Art of Assembly:
10th
23.1
Programmable Interrupt Controller
IRQs
Video Memory
Accessing video memory directly
Familiarize with ASCII and attribute
11th Interacting with I/O Graded Lab-3
IN & Out Instructions
Application: Sending data to virtual printer
X86 programming
Introduction to x86 programming
32-bit registers
32-bit addressing modes
12th
Inline assembly language programming in Visual studio in C++
Accessing arrays and variables
32-bit programming exercise
Exploiting Hardware features: Multi-Media eXtension (MMX)
MMX registers
13th
Exploiting data-level parallelism using
MMX instruction set
MMX programming exercise
14th Writing library functions in assembly and calling from high level Graded Lab-4
language
3 NCEAC.FORM.001.C
Programming exercise

Calling functions defined in high level language in assembly


language
15th
Programming exercise

16th Revision

4 NCEAC.FORM.001.C

You might also like