CMSC121:  Introduction to Computer Science

 

Fall 2008

 

Instructor:  Dr. R. P. Webber

 

Office location and hours:  Ruffner 332.  MF 2 – 3:30, T 1:30 - 3, and by appointment or coincidence.

 

Telephone and email:  395-2192;  webberrp@longwood.edu

 

 

Course description and prerequisite:  An introduction to computer science for the nonspecialist.  Basic computer architecture and design, storage formats, principles of computer operation, and algorithms.  No prerequisite.

 

 

Text:   There is no textbook to buy for this course.  Instead, we will rely on computer files and handouts.  You will need to access the course material using Blackboard.

 

 

Course objectives:

  1. Understand the fundamental constructs used in programming, including decisions and recursion.
  2. Understand how data is stored inside a computer.
  3. Be able to convert numbers between the decimal, hexadecimal, and binary systems.
  4. Be able to carry out logical and Boolean operations.
  5. Know the basics of digital logic circuit design.
  6. Be able to calculate the compression ratio for a standard data compression algorithm.
  7. Be able to use error correcting algorithms.

 

 

Course requirements and grading:

 

            Three tests and a composite group grade (drop lowest of those 4) ………….. 36%

            Assignments .………………………………………………………………… 33%

            Writing assignment ………………………………………………………….. 10%

            Final exam …………………………………………………………………… 21%

 

The grade scale is as follows:  90-100 A; 80-90 B;  70-80 C;  60-70 D;  below 60 F.

 

 

Group grade:  Often you will be asked to work in groups in class.  Working in small groups of three or four, you will be asked to solve a problem and present your results to the class.  Each group will receive a grade on that day's work.  Each member of the group will receive the same grade, except a member who is absent, who will receive a grade of 0.  Missed class participation sessions cannot be made up, but you will be allowed one absence from a class participation session without penalty.  All remaining group grades will be counted equally to determine your composite group grade.

 

 

Homework and working with others:  It is OK to work with others on homework assignments.  Everyone should contribute approximately equally to the work.  If somebody tries to freeload, don’t work with him or her, and tell me if the person persists.  Furthermore, everyone is to write up his or her own solutions.  I don’t want to see duplicate solutions.  In general, it’s all right to brainstorm about how to do an assignment, but the details of carrying it out are to be done individually. 

 

Each assignment will have a due date.  It is due by the start of class on that date.  Failure to hand it in on time will result in a penalty of 25% for each class day it is late.  No excuses will be accepted for late programs.  I’m sorry, but such things as computer failure, sickness, etc., are not excuses!  I strongly urge you not to wait until the last minute to do your assignments.  No assignment will be accepted after the last day of the term for any reason.

 

 

Attendance:  Attendance is expected at all classes.  Makeup tests will be given only with a doctor’s or school excuse.  Makeup tests are always more difficult than regular tests, regardless of the reason for absence.  Homework assignments that are late for any reason, including excused absences, will be penalized  25%  per class day late.

 

Do not leave in the middle of class for any reason, not even to get a drink of water.  Students who leave in the middle of class disrupt the class and ruin the teacher’s concentration.

 

 

Writing assignment:  As a general education course, CMSC 121 will require more writing than some non-general education computer science courses.  There will be at least one writing assignment in this course.  It will be graded both for factual correctness and for writing style.  More details and a grading rubric will be provided with the assignment.

 

 

Tentative Schedule:

 

Week 1  Aug 25 – 29

Introduction; Order of operations.  File:  operations a computer can do.pdf

Week 2  Sep 2 – 5

Programming:  Loops and decisions.  File:  recursion using spreadsheets.pdf

Week 3  Sep 8 – 12

Decisions; computer components.  Files:  decisions using spreadsheets.pdf, gradebook.xls, parts of a computer system.pdf

Week 4  Sep 15 – 19

Units used in a computer; review

Week 5 Sep 22 – 26

TEST; Place value, binary, hexadecimal numbers.  File:  THE_BINARY_NUMBER_SYSTEM.pdf, binary_decimal_and_hexadecimal.pdf

Week 6 Sep 29 – Oct 3

Hexadecimal, ASCII, 2’s complement.  File:  negative integers.pdf

Week 7 Oct 6 – 10

Floating point, catch up.  File:  floating point numbers.pdf

Fall Break

 

Week 8 Oct 14 – 17

Data compression.  Files:  file compression.pdf, file compression exercises.pdf

Week 9 Oct 20 – 24

Truth tables, logical operations, review.  Files:  introduction to digital logic.pdf, digital logic exercises.pdf

Week 10  Oct 27 – 31

TEST; Boolean algebra.  File:  introduction to Boolean algebra.pdf

Week 11  Nov 3 – 7

Boolean algebra, canonical forms.  Files:  laws of Boolean algebra.pdf, Boolean algebra exercises.pdf

Week 12  Nov 10 – 14

Karnaugh maps, parity.  Files:  karnaugh maps.pdf, karnaugh map assignment.pdf

Week 13  Nov 17 – 21

Error correction.  Files:  error detection  parity bits and check digits.pdf, error detection exercises.pdf

Week 14  Nov 24

Error correction, Hamming codes.  Files:  error correction hamming codes.pdf, hamming code exercises.pdf

Thanksgiving break

 

Week 15  Dec 1 – 5

Review, TEST

Thursday, Dec 13

Date and time to be announced

 

 

 

Honor Code:  The teacher subscribes to the Longwood College Honor System, which, among other things, assumes you do not cheat and that you take responsibility to see that others do not.  Infractions will be dealt with harshly.  A student who is convicted of an Honor Code offense involving this class will receive a course grade of F, in addition to penalties imposed by the Honor Board.