CS320

Assembly Language Programming

Aims and Objectives:

An introduction to digital logic, machine structure and instruction sets, assembly language programming (arrays, subroutines, I/O conversion, sorting, searching, lists, look-up tables), interrupts and resets.

Course Goals:

·        Understand low-level concepts such as data representation and machine language.

·        Become knowledgeable with processor architecture and instruction sets.

·        Better understand high-level coding and debugging concepts through the examination of low-level concepts such as addressing modes, stack frames, linking, parameter passing, and memory management.

·        Learn how the hardware components interact with each other along with being able to write low-level code to control the hardware directly.

 


Instructor Details:

Professor:

Douglas J. Ryan

Email:

ryandj@pacificu.edu

Office:

Strain 201

Phone:

(503) 352-2135

Office Hours:

MWF 1:30pm - 2:30pm

or by appt

 

 

Course Details:

Course Title:

CS320 Assembly Language Programming

Prerequisite:

CS 250 Introduction to Computer Science II

with a grade of C or better.

Meeting Times:

MWF 11.00 – 11:50 AM

Location:

Strain 322

Textbooks

  • Primary:

 

 

  • Recommended:

 

Assembly Language For Intel-Based Computers (Fourth Edition) by Kip R. Irvine  Prentice Hall

 

None

Course Website:

Prerequisite For:

http://zeus.cs.pacificu.edu/ryand/cs320/cs320s04.html

CS320 is a prerequisite for CS430 Computer Architecture and CS460 Operating Systems, thus a grade of C or better in CS320 is required to get into CS430 and CS460.

 

 

Tentative Grading:

6-7 Programming Assignments ...........……

250 pts

3 Exams ....................................…………...

225 pts

1 Final ...................................……………..

125 pts

TOTAL……..................................………..

600 pts

Percent Breakdown:

92-100

A

90-92

A-

 

 

88-90

B+

82-88

B

80-82

B-

78-80

C+

72-78

C

70-72

C-

68-70

D+

60-68

D

 

 

0-60

F 

 

 

 

 

Tentative dates for Midterms:

Exam 1:

Monday, February 23

(Week 4)

Exam 2:

Wednesday, March 17

(Week 7)

Exam 3:

Friday, April 16

(Week 10)

Date of Final:

Friday, May 14, 8:30 – 11:00 AM (Strain 322)

Policies:

1.      Programs are to be submitted in the course drop box by 11.00am on the day in which the assignment is due.

2.      Programs can be turned in 24 hours late with a penalty of 20%. Anything later will not be accepted.

3.      No early or late exams/finals will be given.

4.      No incompletes will be given.

5.      The cheating policy is defined in Pacific Stuff & the Pacific Catalog as well as the Academic Policy that each of you signed upon entering Pacific University. Be sure you read or reread this policy carefully. All code written for CS320 is to be an original design and an original implementation. The Web, textbooks, and any other references are simply references for you. Copying source code from any source is prohibited. Further, source code is not to exchange hands in any form or by any medium except when sending your solutions to the instructor. It is OK to share high level ideas during the design phase, help someone in the class fix a bug occasionally, share information dealing with OS issues, debugger issues, in general, development issues that do not involve code writing.

6.      All code in any form generated from this course becomes the intellectual property of Pacific University. You may not share this code with anyone without obtaining written permission from Pacific University.

7.      Neither computer failure, software failure, nor lack of computer access are accepted as excuses for late programs; therefore, start work on the programs as soon as they are assigned, don't put them off until the last minute. Further, corruption of programs due to bad disk media is also not accepted as an excuse for late programs; therefore, always keep a current backup of all programs on a separate disk.

8.      Attendance at every class is critical to your success in this class. I expect you to be on time and ready to go once it's 11:00pm. Any missed lecture is your responsibility to make up. Do not expect me to repeat missed material in class.

9.      The instructor reserves the right to raise or lower a student's grade based on class participation and attendance. Specifically, participation can raise or lower your final grade by 1/3 of a grade. Further, your final grade may be lowered by 1/3 of a grade for each day (or portion thereof) of class missed. Please notify me PRIOR to class if you must miss class for any reason. Just sending an email prior to missing class does not guarantee you will be cleared to miss. Only legitimate reasons will be accepted as excuses for missing class.

10.  Any important issue pertaining to class such as the need to miss an exam or grade issues will not be discussed via email. I will however engage in email discussions regarding issues that need clarifying such as programming assignment questions.

11.  If you are unhappy with something related to the class, then schedule an appointment to see me so that we can discuss it in my office. Complaining in class or out of class to other students gets us nowhere.

12.  You may be asked to leave the classroom if you are causing a distraction e.g. cell phone ringing, talking, etc

 

 

Important Dates:

February 13

Last day to add courses, Last day to drop courses with no record

March 22 – 26

Spring Break

April 9

April 21

Last day to withdraw from courses

Senior Projects Day

May 11

Last day of classes

May 12

Reading Day

May 14

Final Exam, Friday 8:30 am – 11:00 am LL12