COSC 2410: Computer Organization and Programming

Course Information

Lectures: 1 - 2:30 in 232 Philip G. Hoffman Hall
Lab: 11:30 - 1 and 2:30 - 4 in 563 Phlip G. Hoffman Hall
Instructor: Dragan Mirkovic
E-mail: mirkovic@cs.uh.edu
Office: 221 Phlip G. Hoffman Hall
Office Hours: 4 - 5 Tuesday and Thursday
Teaching Assistant: Colin Puri
Office: 566 Phlip G. Hoffman Hall
Office Hours: 4 - 5 Monday and Wednesday and by appointment

Course Description

Basic computer organization; machine cycle, digital representation of data and instructions, assembly language programming, asslembler, loader, macros, subroutines, and program linkage.

Prerequisites:

COSC 1410 Introduction to Computer Science I

Computer organization, introduction to structured programming, C programming language, and algorithm design.

Texts

  1. Required: Assembly Language Programming for the IBM PC Family, by William B. Jones. Scott/Jones; 3rd edition (2001).

    An introductory Assembly language text written for programmers using the two predominant commercial assemblers, Microsoft MASM and Broland Turbo Assembler TASM.

  2. Recommended:Assembly Language for Intel-Based Computers, 4th Edition (2002-2003) by Kip Irvine. Intermediate-level college textbook, covers many advanced topics.
  3. Computer Organization and Design: The Hardware/Software Interface by David A. Patterson, John L. Hennessy. Morgan Kaufmann; 2nd edition (August 1997)

    The classic introduction to the field for all computer scientists and engineers, by the authors of the best-selling advanced computer architecture book, Computer Architecture: A Quantitative Approach.

  4. Vendors (Intel, Microsoft,...) literature available on the web.

Evaluation

The homework assignments will not be graded. You will have to demonstrate your knowledge and understanding of these problems, though, by solving the similar problems in quizzess (approx. 2/month).

Lab Projects (4-5) 30%
Quizzes 25%
Midterm Exam 20%
Final Project 25%
New Homework, quiz and exam scores and final grades posted!

Lab Projects

You can find all the important information about COSC 2410 labs on the lab web page. Please follow the instructions for the lab assigments carefuly in order avoid unnecessary confusions and disappointments.

The tentative schedule for the Spring 2004 COSC 2410 lab is as follows.

Date Topic Due Assignment
2/03/2004 Introduction to the assembly2/05/2004 ...
2/05/2004 Integer Arithmetic2/17/2004 ...
2/19/2004 Problem 23/02/2004 ...
3/04/2004 Problem 33/25/2004 ...
3/30/2004 Problem 44/08/2004 ...
4/13/2004 Final project5/13/2004 ...

Quizzes

There will be two or three quizzes per month, depending on the number of lectures and other assignments. Each quiz will have two problems related to the recently covered material and you will have 15 min to solve them at the begining of the class. Here is the quiz schedule (subject to change).
Date TopicReference
2/03/2004 Number representationsCh. 1
2/17/2004 Integer arithmeticCh. 4
2/26/2004 Control structuresCh. 5
3/30/2004 SubprogramsCh. 6 & 13
4/08/2004 Arrays and stringsCh. 10 & 17
4/15/2004 Floating pointCh. 19
4/27/2004 File processingCh. 18

Class Schedule

Date Topic Slides Homework
1/20/2004 Course Overview and Introduction Syllabus None
1/22/2004 Preliminaries Lecture 1 Read Ch. 1 in Jones.
1/27/2004 Preliminaries ... Lecture 1 pp. 19, problems 1,2,5, and 6 in Jones.
1/29/2004 Assembler Overview Lecture 2 read Ch. 2 in Jones.
2/05/2004 Basic Instructions Lecture 3 pp. 44, problems 4, 6 (a,b) and 7. Read Ch. 3 in Jones.
2/10/2004 Integer Arithmetic Lecture 3 read Ch. 4 in Jones, pp. 65, problems 1-4.
2/17/2004 Comparing and Branching Lecture 4 read Ch. 5 in Jones, pp. 109, 1(a,d), 2a, 3, pp. 114, 1.
2/26/2004 Subroutines Lecture 5 read Ch. 6 and 13.1-13.4 in Jones, Problems:
3/04/2004 Review Sample Midterm Exam
3/09/2004 Midterm Exam Sample Midterm Exam
3/25/2004 Arrays and Strings Lecture 6 read Ch. 10 & 17 in Jones. Problems: 1-2 on pp. 270, 3 on pp. 277, 1 on pp. 504, 2 on pp 509.
4/05/2004 Floating Point Lecture 7 read Ch. 19 in Jones
4/13/2004 Floating Point Arithmetic Lecture 8 read Ch. 19 in Jones
4/20/2004 File Processing Lecture 9 read Ch. 18 in Jones
4/22/2004 Introduction to Image Processing Lecture 10 Work on the final project!

Academic Integrity

You are expected to maintain the utmost level of academic integrity in the course. Any violation of the code will be penalized severely. You are not allowed to collaborate on the homework assignments except for discussing the assignment with other students in the class. You are not allowed to share code or any other written material.



Dragan Mirkovic