Skip to main content

Search Bar Icon Close Menu

Online classes

Effective: Late Fall 8-Week, 2017/2018

CISS 360: Computer Sys & Assembly Lang

Course Description

Introduction to the fundamental concepts of computer systems including data representation, computer arithmetic, Boolean algebra, SSI Logic Design, register-transfer and micro-operations, computer organization, assemblers and assembly language programming.

Prerequisite: CISS 243 or CISS 245

Proctored Exams: Final



Syllabus Contents

Textbooks

Required

  • Irvine, Kip. Assembly Language for X86 Processors. 7th.
    • ISBN-978-0-13-376940-1
      • Note: This text comes with an access code to supplementary resources. These resources are optional, and are not required for course completion.

MBS Information

Textbooks for the course may be ordered from MBS Direct. You can order

For additional information about the bookstore, visit http://www.mbsbooks.com.


Course Overview

The objective of this course is to teach the student the fundamentals of computer systems and their internal processing, as well as assembly language programming. This is accomplished by studying the Intel 80x86 processor, DEBUG, and the macro assembly language provided by Microsoft’s Macro Assembler MASM.


Technology Requirements

Participation in this course will require the basic technology for all online classes at Columbia College:
  • A computer with reliable Internet access
  • A web browser
  • Acrobat Reader
  • Microsoft Office or another word processor such as Open Office

You can find more details about standard technical requirements for our courses on our site.

We will be using the Microsoft Visual Studio Compiler for this class, which is available at http://www.microsoft.com/express/vc/.  Additional options for the Microsoft Visual Studio Compiler can be found at https://www.dreamspark.com/default.aspx. Follow the online help to install the compiler. It may require you to install the .NET framework, which is also free.  We will be using MASM and this is built into the Visual Studio C++ Express and Professional versions.  Downloading MASM on its own is not necessary.

Course Learning Outcomes

  1. Perform conversion in various bases.
  2. Perform arithmetic (and logical) operations in different bases.
  3. Translate a high level code fragment into assembly code fragment

Grading

Grading Scale
Grade Points Percent
A 774-860 90-100%
B 688-773 80-89%
C 602-687 70-79%
D 516-601 60-69%
F 0-515 0-59%
Grade Weights
Assignment Category Points Percent
Discussion 40 5%
Quizzes 140 16%
Programming Assignments 480 56%
Final Exam 200 23%
Total 860 100%


Schedule of Due Dates

Week 1
Assignment Points Due
Discussion - Introductions - Thursday
Discussion 1 5 Thursday/Sunday
Week 1 Handwritten Assignment 1 20 Sunday
Week 1 Handwritten Assignment 2 20
Week 1 Handwritten Assignment 3 20
Quiz 1 20
Week 2
Assignment Points Due
Discussion 2 5 Thursday/Sunday
Week 2 Programming Assignment 1 20 Sunday
Week 2 Programming Assignment 2 20
Week 2 Programming Assignment 3 20
Quiz 2 20
Proctor Information N/A
Week 3
Assignment Points Due
Discussion 3 5 Thursday/Sunday
Week 3 Programming Assignment 1 20 Sunday
Week 3 Programming Assignment 2 20
Week 3 Programming Assignment 3 20
Quiz 3 20
Week 4
Assignment Points Due
Discussion 4 5 Thursday/Sunday
Week 4 Programming Assignment 1 20 Sunday
Week 4 Programming Assignment 2 20
Week 4 Programming Assignment 3 20
Quiz 4 20
Week 5
Assignment Points Due
Discussion 5 5 Thursday/Sunday
Week 5 Programming Assignment 1 20 Sunday
Week 5 Programming Assignment 2 20
Week 5 Programming Assignment 3 20
Quiz 5 20
Week 6
Assignment Points Due
Discussion 6 5 Thursday/Sunday
Week 6 Programming Assignment 1 20 Sunday
Week 6 Programming Assignment 2 20
Week 6 Programming Assignment 3 20
Quiz 6 20
Week 7
Assignment Points Due
Discussion 7 5 Thursday/Sunday
Week 7 Programming Assignment 1 20 Sunday
Week 7 Programming Assignment 2 20
Week 7 Programming Assignment 3 20
Quiz 7 20
Week 8
Assignment Points Due
Discussion 8 5 Thursday/Saturday
Week 8 Programming Assignment 1 20 Saturday
Week 8 Programming Assignment 2 20
Week 8 Programming Assignment 3 20
Final Exam (Proctored) 200
Total Points 860

Assignment Overview

Readings

Be sure to complete the readings (including the Section Review questions) each week before engaging in the discussion or completing the assignments.


Discussion

Each week there is a discussion of programming concepts. You will respond to a question posed by the instructor (byThursday), and then respond to another student’s post (by Sunday).  Regular participation in these forums will advance your understanding (as well as improve your grade). The first 7 weeks each student is required to post two times. NOTE that the first posting by the student must be posted by Thursday of each week (start of discussion); if posted after Thursday, it will be subject to the late policy for this course. The response to another student’s posting is due by Sunday. For Week 8 there is only one post required; this post should be in response to the topic provided by the instructor.

In addition, there will be an open forum for you to pose and answer questions about your programming assignments each week. Regular participation in these forums will advance your understanding of the material. This forum is not graded.


Quizzes

There will be a brief 20-point quiz each week to test your understanding of programming concepts.


Programming Assignments

Each week you will write several programs, based on problems in your text. Some of the assignments are not programs but written assignments. Please use Microsoft Office to complete these assignments.  We will be using the Microsoft MASM assembler and Compiler for this class. Complete your assignments in the Microsoft compiler; then submit the program (.asm file) to the course dropbox.  Please include comments describing the programming sequence (see rubric in the course content area).


Final Exam

You will have one proctored exam worth 200 points.  You must arrange an acceptable proctor and submit proctor information to the Dropbox by the end of Week 2.  See additional information about proctored exams in the Course Policies section below.



Course Outline

Click on each week to view details about the activities scheduled for that week.

Week 1: Introduction to x86 Processor Architecture
Readings

Chapters 1-2

Discussion - Introductions

Introduce yourself in the "Introductions" topic found in the Discussions area. Please give us more than your name. Include your profession, hobbies, interests, and any other information that can help us get to know you. Please post your response by midnight Thursday.

Discussion 1

Go beyond the content of the book and explain either the relationship between Assembly Language and Machine Language or the relationship between a high level language (like C++ or Java) to Assembly Language.

Assignments

The following assignments should be completed in a text document and submitted as the assignments for week 1. All work must be shown to get credit.

Week 1 Handwritten Assignment 1
  • Section 1.7.1 questions 2, 3, 8, 10 and 25
Week 1 Handwritten Assignment 2
  • Section 2.1.5 questions 1, 2 and 3
  • Section 2.2.4 questions 1, 2, and 4
Week 1 Handwritten Assignment 3
  • Section 2.8 questions 1,2,3,4,5,6,7 and 8
Quiz 1

Complete Quiz #1.

Week 2: Assembly Language Fundamentals
Readings

Chapter 3

Discussion 2

The Intel 8086 is a processor that used Complex Instruction Set Computer (CISC) design. This instruction set is very large which lead to the creation of the RISC instruction set. Compare the CISC and RISC instruction sets. Other instructions set can also be compared to the CISC or RISC such as MISC, ZISC, OISC, TTA and VLIW, there are others. Select one and compare it to the CISC or RISC.

Programming Assignments

These must be completed in the Microsoft environment and submitted in the Dropbox. Only need to submit the ASM file.

Week 2 Programming Assignment 1
  • Section 3.10 Exercise 1
Week 2 Programming Assignment 2
  • Section 3.10 Exercise 2
Week 2 Programming Assignment 3
  • Section 3.10 Exercise 3
Quiz 2

Complete Quiz #2.

Proctor Information
Submit your proctor form to the appropriate Dropbox folder by the end of the week. Remember to “Save” the form before placing it in Dropbox. See the Content area for more information.
Week 3: Data Transfers, Addressing, and Arithmetic
Readings

Chapter 4

Discussion 3

Little Endian vs Big Endian. Start a topic about these two forms of storing data in memory. Such topics could include but not limited to, what are the forms of these two, why one is preferred over another. Talk about why a processor uses one over the other. Are there other forms of storing data in memory?

Programming Assignments

These must be completed in the Microsoft environment and submitted in the Dropbox. Only need to submit the ASM file.

Week 3 Programming Assignment 1
  • Section 4.10 Exercise 1
Week 3 Programming Assignment 2
  • Section 4.10 Exercise 3
Week 3 Programming Assignment 3
  • Section 4.10 Exercise 7
Quiz 3

Complete Quiz #3.

Week 4: Procedures
Readings

Chapter 5

Discussion 4

Assembly uses several registers. Discuss the uses of the many registers. Talk about the importance of preserving the content of the registers. There are several registers but several of the instructions use the same registers. 

Programming Assignments

These must be completed in the Microsoft environment and submitted in the Dropbox. Only need to submit the ASM file.

Week 4 Programming Assignment 1
  • Section 5.9 Exercise 4
Week 4 Programming Assignment 2
  • Section 5.9 Exercise 6
Week 4 Programming Assignment 3
  • Section 5.9 Exercise 8
Quiz 4

Complete Quiz #4.

Week 5: Conditional Processing
Readings

Chapter 6

Discussion 5

Discuss the applications for which Assembly language can be used. These applications can be past or current applications for using assembly language.

Programming Assignments

These must be completed in the Microsoft environment and submitted in the Dropbox. Only need to submit the ASM file.

Week 5 Programming Assignment 1
  • Section 6.11.2 Exercise 1
Week 5 Programming Assignment 2
  • Section 6.11.2 Exercise 4
Week 5 Programming Assignment 3
  • Section 6.11.2 Exercise 6
Quiz 5

Complete Quiz #5.

Week 6: Integer Arithmetic
Readings

Chapter 7

Discussion 6

High level languages uses compilers but Assembly uses an Assembler. What are the differences between the two? Can a high level language use an Assembler?

Programming Assignments

These must be completed in the Microsoft environment and submitted in the Dropbox. Only need to submit the ASM file.

Week 6 Programming Assignment 1
  • Section 7.10 Exercise 4
Week 6 Programming Assignment 2
  • Section 7.10 Exercise 5
Week 6 Programming Assignment 3
  • Section 7.10 Exercise 7
Quiz 6

Complete Quiz #6.

Course Evaluation
Please evaluate the course. You will have an opportunity to evaluate the course near the end of the session. A link sent to your CougarMail will allow you to access the evaluation. Please note that these evaluations are provided so that I can improve the course, find out what students perceive to be its strengths and weaknesses, and in general assess the success of the course. Please do take the time to fill this out.
Week 7: Advanced Procedures
Readings

Chapter 8

Discussion 7

Compare Windows Assembly to that of a UNIX system.

Programming Assignments

These must be completed in the Microsoft environment and submitted in the Dropbox. Only need to submit the ASM file.

Week 7 Programming Assignment 1
  • Section 8.11 Exercise 1
Week 7 Programming Assignment 2
  • Section 8.11 Exercise 2
Week 7 Programming Assignment 3
  • Section 8.11 Exercise 4
Quiz 7

Complete Quiz #7.

Week 8: Strings and Arrays
Readings

Chapter 9

Discussion 8

Discuss the relationship between Assembly Language and Networks.

Programming Assignments

These must be completed in the Microsoft environment and submitted in the Dropbox. Only need to submit the ASM file.

Week 8 Programming Assignment 1
  • Section 9.10 Exercise 2
Week 8 Programming Assignment 2
  • Section 9.10 Exercise 3
Week 8 Programming Assignment 3
  • Section 9.10 Exercise 5
Final Exam (Proctored)

You will have 2 hours for the exam, which must be taken with a proctor.  See the information in the Course Policy section about finding an appropriate proctor.



Course Policies

Student Conduct

All Columbia College students, whether enrolled in a land-based or online course, are responsible for behaving in a manner consistent with Columbia College's Student Conduct Code and Acceptable Use Policy. Students violating these policies will be referred to the office of Student Affairs and/or the office of Academic Affairs for possible disciplinary action. The Student Code of Conduct and the Computer Use Policy for students can be found in the Columbia College Student Handbook. The Handbook is available online; you can also obtain a copy by calling the Student Affairs office (Campus Life) at 573-875-7400. The teacher maintains the right to manage a positive learning environment, and all students must adhere to the conventions of online etiquette.

Plagiarism

Your grade will be based in large part on the originality of your ideas and your written presentation of these ideas. Presenting the words, ideas, or expression of another in any form as your own is plagiarism. Students who fail to properly give credit for information contained in their written work (papers, journals, exams, etc.) are violating the intellectual property rights of the original author. For proper citation of the original authors, you should reference the appropriate publication manual for your degree program or course (APA, MLA, etc.). Violations are taken seriously in higher education and may result in a failing grade on the assignment, a grade of "F" for the course, or dismissal from the College.

Collaboration conducted between students without prior permission from the instructor is considered plagiarism and will be treated as such. Spouses and roommates taking the same course should be particularly careful.

All required papers may be submitted for textual similarity review to Turnitin.com for the detection of plagiarism. All submitted papers may be included in the Turnitin.com reference database for the purpose of detecting plagiarism. This service is subject to the Terms and Conditions of Use posted on the Turnitin.com site.

Non-Discrimination

There will be no discrimination on the basis of sex, race, color, national origin, sexual orientation, religion, ideology, political affiliation, veteran status, age, physical handicap, or marital status.

Student Accessibility Resources

Students with documented disabilities who may need academic services for this course are required to register with the office of Student Accessibility Resources. Until the student has been cleared through this office, accommodations do not have to be granted. If you are a student who has a documented disability, it is important for you to read the entire syllabus as soon as possible. The structure or the content of the course may make an accommodation not feasible. Student Accessibility Resources is located in Student Affairs in AHSC 215 and can be reached by phone at (573) 875-7626 or email at sar@ccis.edu.

Online Participation

You are expected to read the assigned texts and participate in the discussions and other course activities each week. Assignments should be posted by the due dates stated on the grading schedule in your syllabus. If an emergency arises that prevents you from participating in class, please let your instructor know as soon as possible.

Attendance Policy

Attendance for a week will be counted as having submitted any assigned activity for which points are earned. Attendance for the week is based upon the date work is submitted. A class week is defined as the period of time between Monday and Sunday (except for week 8, when the work and the course will end on Saturday at midnight.) The course and system deadlines are based on the Central Time Zone.

Cougar Email

All students are provided a CougarMail account when they enroll in classes at Columbia College. You are responsible for monitoring email from that account for important messages from the College and from your instructor. You may forward your Cougar email account to another account; however, the College cannot be held responsible for breaches in security or service interruptions with other email providers.

Students should use email for private messages to the instructor and other students. The class discussions are for public messages so the class members can each see what others have to say about any given topic and respond.

Late Assignment Policy

An online class requires regular participation and a commitment to your instructor and your classmates to regularly engage in the reading, discussion and writing assignments. Although most of the online communication for this course is asynchronous, you must be able to commit to the schedule of work for the class for the next eight weeks. You must keep up with the schedule of reading and writing to successfully complete the class.

No late discussion posts will be accepted.

Late assignments will be accepted for up to one week past the due date for credit on a sliding scale.  For instance, an assignment that is 3.5 days late will receive 50% credit; an assignment that is 6 days late will receive 14.3% credit.

Course Evaluation

You will have an opportunity to evaluate the course near the end of the session. A link will be sent to your CougarMail that will allow you to access the evaluation. Be assured that the evaluations are anonymous and that your instructor will not be able to see them until after final grades are submitted.

Proctor Policy

Students taking courses that require proctored exams must submit their completed proctor request forms to their instructors by the end of the second week of the session. Proctors located at Columbia College campuses are automatically approved. The use of ProctorU services is also automatically approved. The instructor of each course will consider any other choice of proctor for approval or denial. Additional proctor choices the instructor will consider include: public librarians, high school or college instructors, high school or college counseling services, commanding officers, education service officers, and other proctoring services. Personal friends, family members, athletic coaches and direct supervisors are not acceptable.


Additional Resources

Orientation for New Students

This course is offered online, using course management software provided by Desire2Learn and Columbia College. The course user guide provides details about taking an online course at Columbia College. You may also want to visit the course demonstration to view a sample course before this one opens.

Technical Support

If you have problems accessing the course or posting your assignments, contact your instructor, the Columbia College Helpdesk, or the D2L Helpdesk for assistance. Contact information is also available within the online course environment.

Online Tutoring

Smarthinking is a free online tutoring service available to all Columbia College students. Smarthinking provides real-time online tutoring and homework help for Math, English, and Writing. Smarthinking also provides access to live tutorials in writing and math, as well as a full range of study resources, including writing manuals, sample problems, and study skills manuals. You can access the service from wherever you have a connection to the Internet. I encourage you to take advantage of this free service provided by the college.

Access Smarthinking through CougarTrack under Students -> Academics -> Academic Resources.


+

Request info