Course Syllabus

Fall 2009    CSCI/CMPE2333 Computer Organization and Assembly Language

Department of Computer Science

University of Texas - Pan American


General Course Information

Meeting time: 

10:35am~11:50am, Tuesday, Thursday.

Classroom:

ENGR 1.272

Class Webpage:

Follow the link to the course from Blackboard at: http://onlinelearning.utpa.edu/

Instructor Information

Name

FANG LIU

Office

ENGR 3.272

Phone

(956) 316 7923

Fax

(956) 384 5099

Email

fliu AT cs.panam.edu

Office hours

1:00pm~3:00pm on Monday and Wednesday, or by appointment

TA Information

Name

SWATHIPRIYA VEMPALI

Office

ENGR 1.216

Email

Svempali AT broncs.utpa.edu

Office hours

Monday & Wednesday, 9am-12pm

Course Description

This course provides the student with background in how computer hardware functions, the machine code for an instruction set and the relationship between machine code and assembly language.  Topics covered include: An introduction to computer organization, use of assembly language programming, basic instruction sets, arithmetic and logical operations, addressing modes and macro definitions, etc.

Course Objective

This course is intended to provide the student with an introduction to computer organization and assembly language programming. Its purpose is to provide the student with a better understanding of the internal operation of the computer.

Upon successful completion of the course, you are expected to be able to: (1) Write programs in the MIPS assembly language that include the following features: assignment statements, input and output, strings, conditional execution, procedures, arrays, records, and recursion. (2) Discuss and describe the basic components of a computer. (3) Discuss and describe how memory is organized. (4) Discuss and describe how peripherals operate and interface with a computer. (5) Demonstrate how fundamental high level programming constructs are implemented at the machine language level. (6) Explain how subroutine calls are handled at the assembly level. (7) Explain the basic concepts of interrupts and I/O operations.

Textbooks

"Computer Organization and Architecture: Designing for Performance", by William Stallings, 8th ed. ISBN: 013-6088600. -- Required

"Assembly Language for Intel-based Computers", by Kip Irvine, 5th ed. ISBN: 013-2383101. --Required

Prerequisites

This course is the fourth in the sequence of introductory Computer Science courses and third in the sequence for Computer Engineering. Students are expected to have successfully completed, or be concurrently enrolled in, CSCI/CMPE 2380, or have the consent of the instructor.  (If you do not meet these requirements, you will be dropped from the course.)  This course must be successfully completed (with a grade of 'C' or better) to continue the course of studies in Computer Science/Engineering.

Method of Instruction

The course will be taught mainly through lectures and in-class discussion. Please visit routinely the class webpage for the class schedule and up-to-date information.

There will be three major examinations, several homework and programming projects. The exams will be close-book. All the homework and projects must be done individually. 

There will be about 5 programming assignments. These are expected to be organized and well‑documented. The specific details for grading and documentation will be given at the time of the first program assignment.

 

NOTE: You are expected to create your own programs with no assistance from any source other than your notes, textbook, and your instructor.  Copying, collusion, and other forms of plagiarism will not be tolerated.  Programs which are not your own work will not earn any credit.

Grading Policy

Grades will be computed based on the following weights:

Homework

15%

Exams 1-3

60% (20% of each)

Project

25%

 

Final letter grade will be curved based on the distribution of the overall scores. However, you may expect the following tentative grading scale to evaluate your performance: A's:85-100%, B's:75-84%, C's:65-74%, D's:55-64%.

 

If you have questions regarding the grading of your homework, or exams, you MUST come to see either the instructor or the TA WITHIN ONE WEEK after the date your homework, projects or exams have been returned to you.

Make-up and Late Work Policy:

Do not miss exams - there is no make-up exam. However, if for some unavoidable and valid (in the judgment of the instructor) reasons you have to miss an exam, speak with me before the exam.

Please work on homework assignments early and hand in on time. Late work will be levied heavy penalties. Penalty: Up to 1 week late 20 points penalty, 2 weeks late 50 points penalty. No accepted afterwards (Grade is zero).

 

Course Schedule

            Tentative schedule, subjective to change.

Week

Topic

Chapters

1-2

    Computer Evolution, Top-level view of a computer

Stallings.1-3

3

    Internal & External Memory

Stallings.5-6

4

    Input/Output

Stallings.7

 

    Exam 1: 10/01/2009, Thursday.

 

5-6

    Cache Memory

Stallings.4

7-8

    Computer Numbers and Arithmetic

Stallings.9

 

    Exam 2: 10/27/2009, Tuesday.

   

9

    Assembly language fundamentals; LAB

Irvine. 3

10

    Data transfer; Arithmetic; Addressing

Irvine. 4, 7.4

11-12

    Procedures and parameter passing

Irvine. 5, 8

13

    Logic and decision instructions

Irvine. 6

14

    Integer arithmetic

Irvine. 7

 

    Exam 3