COE301 Lab Syllabus T-232
COE301 Lab Syllabus T-232
A. Instructor Information
Name Email Office Phone
Instructor
Dr. Kamal Chenaoua [email protected] 23-082 2082
Office Hours Monday 11:00 AM – 11:50 AM or by appointment
B. Course Information
C. Assessment
Item Weight
Attendance 2%
Lab Assessment Lab Work/Assignments 6%
Quizzes 7%
Design/Demo 10 % + Quiz 2%
Project Evaluation
Report 5%
D. Tentative Lab Schedule
Week Lab
Part I: Assembly Language Programming
1 No Lab
Lab 1/2: Introduction to MIPS Assembly Language Programming (MARS)
Information about the lab
2 MARS tutorial: Editor, Assembler, Debugger
Register and Memory
Introduction to system calls. Hello world program
Lab 3: Integer Arithmetic
Integer addition & subtraction
Shift and rotate
3 Bitwise logic instructions
Convert character to integer
Simple loop: e.g. count the number of 1’s in a register.
Tracing program execution and breakpoints
Lab 4: Flow Control and 1D arrays (Quiz 1)
Defining data, strings, and arrays
Viewing variables in memory
4 1D-Array traversal
Searching an array
Finding min and max
Generate a sequence of random numbers and save in an array.
Lab 5: 2D Arrays and Files
Indexing 2D arrays
5 Pointers versus indexing
Reading a text file
Application: reading an image from a file and dealing with images
E. Notes:
As per KFUPM rules and regulations, attendance is mandatory. More than 3 unexcused lab absences
will be reported to the registrar’s office, resulting in a DN grade.
You will be given homework assignments.
Announcements and solutions will be posted on Blackboard and/or Gradescope. It is the student’s
responsibility to check announcements regularly.
Deadlines must be respected for all assignments; failure to do so, a 10% penalty is deducted for each
day for three days ONLY, and a ZERO is granted afterward.