Uploaded by Madina Sadirmekova

COMSC260 5071 CPENTCHEVA SP20

advertisement
Course Syllabus
Diablo Valley College
COMSC 260 section 5071 – Assembly Language and Machine Orhanization
Mandatory Meetings: None
Instructors:
Caterina Pentcheva
E-mail: cpentcheva@dvc.edu
Office Location: LA 111
Face to Face Office Hours LA 111 or ATC 115:
Tuesday 1:20-2:20 pm: in person only
Online Office Hours via: Canvas email/Canvas chat/Zoom/ Skype
Monday and Wednesday 12-1:30 pm -- via Canvas
email/zoom/Skype
Sunday 10-11 am -- via email and/or Canvas chat
Course Website:
Canvas
Prerequisite:
COMSC 165
Course Credits
4 units
Last Day to Add: 02/09/20
Last Day to Drop With Refund: 02/07/20
Last Day to Drop Without W: 02/09/20
Last Day to Drop With W: 04/24/20
Spring Break March 29 - April 4
MIDTERM EXAM - March 22
FINAL EXAM - May 17 or May 18, student choice
Course Description
This course covers the basics of machine architecture, machine language, assembly language,
operating system interface, and interfacing with high level languages. Topics include data
representation, instruction representation and execution, addressing, indexing, macros,
subroutine linkages, storage and time efficiency issues, interrupt descriptor tables, virtual
memory, cache memory, and dynamic address translation.
Successful strategies in an online class
•
New Online Students - Strategies to Learn Online: College of the Siskiyous' Surviving in
an Online Course
Student Learning Outcomes:
1.
2.
3.
4.
5.
6.
Describe computer hardware architecture.
Use all types of data representation.
Access and use the operating system.
Program in assembly language.
Interface with high level languages.
Perform simple hardware simulation.
Required Text/Material
Text: Assembly Language for x86 processors, 7th edition
Author: Kip Irvine
Publisher: Prentice Hall
Software
For this course, we will be using Microsoft Visual Studio 2019/2017. You may also use the
express editions of Visual Studio.
To setup up MASM in Visual Studio 2019 environment, you may refer to author’s
page: http://kipirvine.com/asm/gettingStartedVS2019/index.htm
To setup up MASM in Visual Studio 2017 environment, you may refer to author’s
page: http://kipirvine.com/asm/gettingStartedVS2017/index.htm
To download Irvine directory and updated project:
http://kipirvine.com/asm/examples/index.htm
NOTE: I recommend using PC computer for this course. You will save yourself a lot of
headache. However, if you want to use Mac computers, please see the directions below:
Installing Visual Studio on a Mac
Before you can install Visual Studio on a Mac you must first install Windows.
You have 2 choices for installing Windows: you can either have a dual boot system (Boot Camp)
or you can run Windows as a virtual machine (Virtual Box or Parallels Desktop). In general, if
you run Windows on a dual boot system you will have better performance. The best
recommendation is to install the 64-bit version of Windows 10.
Here is one suggested link for installing Windows 10 on a Mac:
https://www.macworld.co.uk/how-to/macsoftware/install-windows-mac-3497251/
Here is a link for set up VMWare Fusion on Mac systems,
How To Setup VMWare Fusion On Mac OS X
Or install the Virtual Box with Windows 10 on a Mac,
[2017] How to Run Windows 10 on Mac for FREE!! OS X Sierra to Snow Leopard!!
Course Assignments and Exams
The course will require 9 online quizzes, 8 assignments, a midterm exam, and a final exam. The
lowest quiz will be dropped.
Exams cannot be made up or rescheduled. In case of emergency, please talk to me.
Assignments are worth 30% of the final grade, quizzes 10%, midterm 25%, final 25%, and
discussion reflections 10%.
Final letter grades are based on the following overall course percentage:
90 –
80 –
70 –
60 –
0–
100 % A
89 % B
79 % C
69 % D
59 % F
Midterm Exam - after chapter 4,
Final Exam - after chapter 9
Note: Both Exams are going to open from 4 am to 11:59pm on the indicated days so you
have flexibility of when to complete them. However, you will have only one attempt and 120
minutes (only ) to complete the exam.
Tardiness of Assignments and Tests
Each assignment has a due date. After the due date, the assignment loses a point per day. After
20 days of tardiness, the assignment is worth zero points. Absolutely no assignment will be
accepted after the final exam or the end date of instructions, whichever comes later.
If you fail to take the test with the rest of the class, there are 10 percent late penalty. For
example, if you take the midterm after the rest of the class and you get 90 percent, your test will
be worth only 81 percent. (10% of 90 % is 9%)
Quizzes have due dates. The lowest quiz will be dropped. Missed quiz will NOT be re-open for
any reason. Please check Canvas calendar for due dates.
In case you need to take the exam on a different date because of religious Holiday, you need to
talk to me in ADVANCE and take the exam BEFORE the class. If you have an emergency, you
need to present supporting proof such as doctors note.
Emergency do not include:
----Forgetting to take the exam
--- Having light cold or flu
---Broken car
---Family vacations
---Sick grandparents, parents, siblings
-- Broken computers and cell phones
--Picking someone from the airport, train stations, etc.
--Being in a different time zone
--Having another exam on the same day
Submission of Assignments:
Submit assignments:
1. Copy your source code and a screenshot of one or more runs for each part of the
assignment (if more than one part) on a word document - docx file and submit via
assignments tool in Canvas.
2. For non-programming exercises: Upload a word document with your work. For full credit
on non-programming assignments: PLEASE show your work.
Please submit the assignment when you complete ALL parts if the assignment has more than one
part. I do not accept partially completed assignments. You can submit partially completed
assignment only if you cannot/do not have time to complete the entire assignment and elect to
get a partial credit for that particular assignment.
Assignments sent in any other format or via email will not be graded and you may receive 0
points for them.
Assignments CANNOT be submitted after the end of the semester.
Grading assignments
1. Accuracy – 15 points
2. Code style – indentation, clarity, etc. – 2 points
3. Comments – 3 points.
Block comment must include your name, assignment number and description, date
submitted, and if the assignment is complete or incomplete. An assignment is complete if it
is coded properly according to the specifications, has no syntax or logic errors, and
produces the expected output.
Line comments – most of the assembly code statements must have comments.
Reflections
In each module, your instructor will post a reflection topic on a dedicated reflection discussion
board that you will find in each module. You are to post a two paragraph reflection on the posted
topic and reply to two of your classmates reflections. Note that this is a graded activities and they
have due dates as any other assignment in this course.
Note: Reflections are due by midnight on the due dates. Every reflection posted after the due
date will be discarded. There is no partial credit for this assignment.
Note: Replies to reflections will be due by midnight two days after the due date of the
reflections. Replies posted after the due date will be discarded. There is no partial credit for this
assignment.
Quizzes
All quizzes are online. You will have 15 minutes to complete each quiz. You need to complete
each quiz on one sitting. Quizzes are due by Midnight Sundays. Please refer to the table at the
end of the syllabus for more details. You need to complete the quizzes by their closing time. No
makeup on quizzes. No quiz will be re-opened after its closing date. The lowest quiz will be
dropped.
Class Policy
Expect to spend about 12 hours per week on this course.
Lab assignments, Labs and other materials are posted on the class website in Canvas
Quizzes will cover the material for the indicated week's reading assignment in the course outline,
the lecture notes and the power point slides for the week.
For questions on labs, assignments, and any other course related questions, use the Canvas
discussion board. Students may post and reply to questions in order to help each other. Use this
method so that all students benefit from questions, answers, and clarifications.
If you have any questions about lectures, quizzes, exams, etc. please email using Canvas When
emailing instructor, please type COMS260_SectionNumber_Your Name_ content of the
email in the subject line.
Arrangements for missed exams must be made with the instructor in advance. Final Exam cannot
be missed.
No credit will be given for work that is plagiarized. Points awarded for work that is later found to
be plagiarized will be withdrawn. Please do not delete (lose) your assignments and labs from
your computers or flash drives until the end of the semester.
For questions on labs, assignments, and any other course related questions, use the Canvas discussion
board. Students may post and reply to questions in order to help each other. Use this method so that all
students benefit from questions, answers, and clarifications.
Arrangements for missed exams must be made with the instructor in advance. Final Exam cannot be
missed.
No credit will be given for work that is plagiarized. Points awarded for work that is later found to be
plagiarized will be withdrawn. Please do not delete (loose) your assignments and labs from your
computers or flash drives until the end of the semester.
Attendance
This is a challenging class and you should try and attend every lecture. If you miss class, you
will be responsible for asking another student about what was covered on the day you missed
including assignment due dates. The best practice is to login to Canvas daily or set up
notifications to remind the due day for each assignment.
Students who miss 2 or more weeks of class and who do not turn in assignments or take exams
may be dropped from the class unless arrangements are made in advance.
Tutoring
Currently there is no authorized tutoring for Comsc-260 at DVC.
Dropping from Class
If for any reason you need to stop attending class, it is your responsibility to contact the
admissions office and withdraw from the class. If you haven't dropped and your name shows up
on the FINAL Class Roster, your grade will be "F" for the school Policy.
Incomplete
The “incomplete” grade was designed for students who have a last minute “disastrous” event
(serious illness, death in the family) that prevents them from completing the course. A student
must be passing prior to the “disaster”, must have more than 50 percent of the work completed,
and evidence of the “disaster” must be supplied to the instructor. The instructor has sole
discretion of whether to issue the incomplete. Incompletes are rarely given and do require a
contract between the student and instructor about what work is to be made up and the time limit
in which it is to be finished.
Cheating & Plagiarism Policy
Don't do it…Consider this…
Do you really want to have faked your way through the class?
The DVC Academic Integrity Policy is located at:
https://www.dvc.edu/communication/policies/pdfs/ADRF.pdf
Student Code of Conduct Policy
Student Code of Conduct is located at:
https://www.dvc.edu/communication/policies/student-rights/code-of-conduct.html
is posted on the DVC Website and pertains to both face to face and online courses. Please read
and contact me if you have questions.
Student Privacy Rights Policy
The Family Educational Rights and Privacy Act (FERPA) is a law that protects students from
having their education records shared with people without the student giving their advance
approval in writing. (Education records include such things as grades, information from
counseling appointments, academic standing, disciplinary records, to name a
few.) FERPA also gives students the right to see their education records. If there is inaccurate or
misleading
information in their records, students can challenge it and try to get it changed. Under FERPA,
colleges must have students’ written permission to let parents, guardians, spouses, or others see
or discuss their educational records, even if the student is present.
Students Privacy Rights is located at:
https://www.dvc.edu/communication/policies/student-rights/privacy.html
and the link of student support services,
https://www.dvc.edu/services.html
and more the Food Pantry,
https://www.dvc.edu/student-services/student-life/food-pantry.html
Accommodations for Students with Disabilities
If you have a documented disability and wish to discuss academic accommodations, or if you
would need assistance
in the event of an emergency, please contact me as soon as possible.
DSS Statement:
"Any student with a documented disability is welcome to contact us as early in the
semester as possible so
that we may arrange reasonable accommodations. As part of this process, please be in
touch with Disability
Support Services office at Student Services Center Room 240 or call: 925-969-2176”
For information related to DVC Disabled Student Services go to:
http://www.dvc.edu/studentservices/dss/dss-student-handbook/index.html
Changes to the Syllabus
The contents of this syllabus are subject to change with appropriate notice to the students.
Course Summary:
Date
Sun Feb 2, 2020
Details
Assignment 1 - Number Systems - Read
Assignment Chapter 1-- PLEASE SHOW YOUR WORK
FOR FULL CREDIT
Course Information Module Reflections Assignment
graded discussion
Assignment Quiz 1 - Basic Concepts
Sun Feb 9, 2020
Assignment 2 - Basic Architecture - Read
Chapter 2
Basic Concepts Reflections - graded
Assignment
discussion
Assignment
Assignment Quiz 2 - Basic x86 Architecture
Assignment
Sun Mar 1, 2020
x86 Processor Architecture Reflections graded discussion
due by
11:59pm
due by
11:59pm
due by
11:59pm
due by
11:59pm
due by
11:59pm
due by
11:59pm
due by
11:59pm
due by
Assignment Quiz 3 - Assembly Language Fundamentals
11:59pm
Assignment
Assembly Language Fundamentals
Reflections - graded discussion
due by
11:59pm
Assignment
Sun Mar 15, 2020
Sun Mar 22, 2020
Sun Apr 12, 2020
Assignment 3 - Intro Assembly Language
Programming - Read Chapter 3
due by
11:59pm
Data Transfer, Addressing , and Arithmetic
Reflections
Assignment 4 - Data transfers, addressing,
Assignment
and arithmetic - Read Chapter 4
Quiz 4 - Data transfers, addressing, and
Assignment
arithmetic
due by
11:59pm
due by
11:59pm
due by
11:59pm
Assignment
Assignment Midterm due by 11:59pm
Assembly Language Procedures Reflections
- graded discussion
Assignment 5 - Procedures - Read Chapter
Assignment
5
due by
11:59pm
due by
11:59pm
due by
11:59pm
Assignment
Assignment Quiz 5 - Procedures
Sun Apr 26, 2020
Assignment 6 - Conditional Processing Read Chapter 6
Conditional Processing Reflections Assignment
graded discussion
Assignment
Assignment Quiz 6 - Conditional Processing
Sun May 10, 2020
Integer Arithmetic Reflections - graded
discussion
Assignment 7 - Integer Arithmetic - Read
Assignment
Chapter 7
Assignment
Assignment Quiz 7 - Integer Arithmetic
Sun May 17, 2020
Tue May 19, 2020
Fri May 22, 2020
Fri Jun 19, 2020
due by
11:59pm
due by
11:59pm
due by
11:59pm
due by
11:59pm
due by
11:59pm
due by
11:59pm
Assignment Quiz 8 - Advanced Procedures due by 11:59pm
Assignment
Advanced Procedures Reflections - graded due by
discussion
11:59pm
Assignment 8 - Advanced Procedures - Read
Chapter 8
Reading Quiz Chapter 9 - Strings and Arrays
Assignment - note, you need to read chapter 9 to
accomplish this quiz
Assignment
Assignment FINAL EXAM due by 11:59pm
Assignment FINAL
due by
11:59pm
due by
11:59pm
Download