Metropolitan Community College Class Syllabus – 2008-09/Winter CLASS IDENTIFICATION TITLE: PREFIX/SECTION: CREDIT HOURS: CLASS BEGINS|ENDS: MEETING DAY(S)|TIME(S): NO-CLASS DAYS: WITHDRAW DATE: CLASS LOCATION: LAB LOCATION: Intel Assembly Language II INFO 2531/5B 4.5 4 Dec 2008|26 Feb 2008 Th|5:30pm-9:30pm 25 Dec 2008 & 1 Jan 2009 11 Feb 2009 FOC 8 201 FOC 8 201 or Academic Resource Centers CONTACT INFORMATION INSTRUCTOR NAME: - Alan R. Reinarz METRO OFFICES HOURS* M, W: T: 11:00a-12:00p 1:30p-3:30p Th, F: 3:30p-4:30p LOCATION PHONE FAX SOC MAH 201F 738-4089 (voice-mail) 738-4535 FOC 8 203 457-2625 457-2946 *Stated office hours may need to be changed due to special circumstances or events. If the student wishes to meet with the instructor at a time other than scheduled office hours, the student should make an appointment with the instructor. Home phone: EMAIL ADDRESS: FACULTY WEB SITE: ACADEMIC AREA: DEAN’S TELEPHONE: (402) 556-3071 areinarz@mail.mccneb.edu (alt.: areinarz@mccneb.edu) http://ctva.mccneb.edu/areinarz Information Technology & E-Learning 457-2660 (Tom Pensabene) COURSE INFORMATION COURSE DESCRIPTION: This course is a continuation of INFO 2521 and extends those topics and skills. Additional topics include writing and using macros; creating system-level software tools as well as more advanced application programs; manipulating computer hardware via machine and assembly language code; and employing interfaces between assembly language code and operating systems (MS Windows, MS-DOS, and others), and between assembly language code and application programs developed in C++ and other high-level languages. COURSE PREREQUISITES: INFO 2521 Intel Assembly Language I Metropolitan Community College 1 Template Rev. 7/24/06 COURSE OBJECTIVES: Upon successful completion of this course, the student will be able to: 1. Demonstrate knowledge and abilities in relation to common cross-platform data representations, computer architectures, and machine and assembly language principles and techniques. 2. Demonstrate knowledge of more advanced assembly language directives, operators, and program structure. 3. Approach programming problems with a machine-level mind set, and use assembly language to create and develop (including plan, write, assemble, execute, and document) more advanced, 32-bit Protected mode and 16-Bit Real-address mode application programs and system-level software (without having to ask anyone for help). 4. Demonstrate improved machine-level debugging skills, including monitoring each of the CPU's actions as directly as possible. 5. With regard to the relationship between fundamental high-level programming constructs (such as statements, arithmetic expressions, loops, and logical structures; and data structures and arrays) and lower-level (assembly language and (native and virtual) machine language) code: demonstrate the use of lower-level code to implement highlevel constructs, explain how high-level languages implement their high-level constructs at the lower levels, and explain how high-level language compilers (such as C++) translate from their high-level language into lower-level code. (See Study Guide handout for more detailed objectives.) REQUIRED & SUPPLEMENTAL MATERIALS: Title: Assembly Language for Intel®-Based Computers Edition: 5th ed. (2007) Author: Kip R. Irvine Publisher: Prentice-Hall ISBN: ISBN: 5th ed.: 0-13-238310-1 Materials: “Removable” storage media for submittal to instructor, as needed Students enrolled in this course may obtain a licensed copy of Microsoft Visual Studio .NET 2008 Professional (includes C++ & MASM 9.0) and Microsoft Visio at no charge, for use on their own computer. MCC is currently using VS .NET 2008. See the following link for details on using MSDNAA: http://sharepoint.mccneb.edu/msdnaa. This software is yours to keep. Most older versions of MASM and Microsoft C/C++ are also acceptable. In addition, for 16-bit software support, students may obtain Visual C++ 1.52, MASM 6.11, Windows 98 SE, and MS-DOS 6.22 from MSDNAA via MCC. See textbook and handouts for additional discussion of software needed for this course. CLASS STRUCTURE: In each lecture during this course, the instructor will cover material the student needs to learn and accomplish. In addition, written handouts will be provided from time to time. These will be used to supplement the text material and expand the course. Instruction will consist mainly of lecture material presented by the instructor. In some classes, group discussion and demonstration will be utilized. In all meetings, discussion Metropolitan Community College 2 Template Rev. 7/24/06 opportunities will be provided and the student is encouraged to ask questions and clarify information as the instructor is lecturing and/or presenting material. ASSESSMENT OF STUDENT WORK TYPES OF ASSESSMENT/ASSIGNMENTS: a. Types of student work (Quizzes/Exams/Papers/Projects/etc) that will be assessed Student progress is measured against the course objectives listed earlier by means of in-class participation, Intel assembly language computer programs, as well as periodic written and hands-on skills testing. Assignments will be Intel assembly language programs, for the student to work on either at home or in one of the computer labs. Programs are vital to achieving the course objectives. Students will write Intel assembly language programs based on material learned over the chapters in the textbook. Please retain copies of your submitted work. Typical program submittals must include: design/format/layout documentation for all program input and output, a hierarchy diagram and/or UML (where appropriate), flowcharts (or pseudo-code or IPO charts), printed assembler, compiler and linker list files as successfully executed, printed output from a successful test execution, listings of all test input and output files, and, on a 3.5” floppy diskette or other submittable storage medium: o source files for all printed documentation, o the program source code as successfully compiled and executed, and o all data files needed for testing program execution. Programming assignments will be evaluated on: the adequacy of program planning; correctness of coding generated; usage of comments to describe and clarify program logic, variable usage, and input/output requirements; adequacy of program testing procedures; and adequacy of program documentation. Of course, the program should also assemble/compile, link, and run correctly. Full points are awarded for the inclusion of the specified item(s), with points being deducted for notable problems. A typical point assignment for these various aspects of programming for a 40 point program is as follows: Planning & external documentation: 1 input layout(s) 1 output layout(s) 1 hierarchy diagram/UML 4 flowcharts/pseudocode/ IPOs Comments in source code: 2 general description of program 2 input/output requirements 2 purpose & use of each variable (variable table) 2 program logic (for each function/module) Coding & implementation: 3 standard coding style & related issues 3 correct procedural logic/method 3 correct assembly/compile/link 16 correct run --------40 total The written exams may be a combination of fill-in the blanks, multiple choice, true/false, and essay questions. The exams will test material presented in the reading and other assignments, and during class meetings. Metropolitan Community College 3 Template Rev. 7/24/06 b. Other assignments (Required reading, homework, and etc) and/or class participation The student will have specific assignments to read and master. These assignments are indicated in the course schedule and/or outlined by the instructor. The student should have read the material prior to the class meeting date. c. How assessments are measured, how students will receive assignments, and how assignments will be submitted See above. Assignments are announced verbally in class, with a recap on the instructor’s web site for this course. Assignments should be submitted in printed form to facilitate the assessment process. Assignment files should also be submitted to the instructor via removable media or e-mail. d. Make-up and late assignment policies LATE ASSIGNMENTS: Assignments turned in late MAY lose 10% per week. Late assignments MAY not be accepted after two weeks overdue. Please contact instructor regarding the circumstances of any late work. MAKE-UP TEST PROCEDURES: Students MUST be present on the day of an announced test. If the instructor is informed BEFORE the test concerning a valid absence, other arrangements MAY be made. There will be no retakes of tests. Test dates are not firm and are therefore subject to change. e. How/when you will give student feedback on their progress Grades will be reflected on the returned items. Students may obtain their current cumulative grade from the instructor before or after class. f. When papers/projects/tests/etc. will be returned The programming assignments and exams will be returned in class one week after they are turned in to the instructor. The exams will be reviewed in class but retained by the instructor. GRADING POLICY: Grading Scale Letter Grade Percent Range A 90–100 B 80-89 C 70-79 D 60-69 F 0-59 Course Requirements Activity Frequency Written Homework Programs 7 Exams 1 Final Exam 1 Final Project Weight of Grade 280 points 150 points 150 points ASSESSMENT OF STUDENT LEARNING PROGRAM: Metropolitan Community College is committed to continuous improvement of teaching and learning. You may be asked to help us to accomplish this objective. For example, you may be asked to respond to surveys or questionnaires. In other cases, tests or assignments you are required to do for this course may be shared with faculty and used for assessment purposes. USE OF STUDENT WORK: By enrolling in classes offered by Metropolitan Community College, the student gives the College license to mark on, modify, and retain the work as may be required by the process of Metropolitan Community College 4 Template Rev. 7/24/06 instruction, as described in the course syllabus. The institution shall not have the right to use the work in any other manner without the written consent of the student(s). Please note: Nothing in the preceding paragraph overrides the restrictions on sharing or distribution of solutions to assignments and tests discussed below under the Academic Honesty Statement. INSTRUCTOR’S EXPECTATIONS OF STUDENT ATTENDANCE POLICY: Attendance is necessary to understand the course material. Therefore, it is important to be in class when the assignments are given out. Excessive absences or unsatisfactory progress will subject the student to administrative withdrawal (IW) from the course. If a student should miss a class for any reason, he/she is expected to cover the material missed on his/her own. All work must be made up to the satisfaction of the instructor. COMMUNICATION EXPECTATIONS: When you communicate with others in this course, you must follow the Student Code of Conduct (http://www.mccneb.edu/catalog/studentinformation.asp), which calls for responsible and cooperative behavior. Please think critically, ask questions, and challenge ideas, but also show respect for the opinions of others, respond to them politely, and maintain the confidentiality of thoughts expressed in the class. You may also wish to review information at http://www.albion.com/netiquette/.html. ACADEMIC HONESTY STATEMENT: Students are reminded that materials they use as sources for classwork may be subject to copyright protection. Additional information about copyright is provided on the library website at http://www.mccneb.edu/library or by your instructor. In response to incidents of student dishonesty (cheating, plagiarism, etc.), the College imposes specific actions that may include receiving a failing grade on a test, failure in the course, suspension from the College, or dismissal from the College. Disciplinary procedures are available in the Advising/Counseling Centers or at http://www.mccneb.edu/procedures/V4_Student_Conduct_and_Discipline.pdf. Instructor Policy: Please note: ANY sharing or transfer of assigned work or test contents or answers between a student and any other person or party; in part or in whole; whether by disk exchange, E-mail, manual transcription, co-development of an assignment, or any other means; unless authorized by the instructor in advance in accordance with the guidelines in the following paragraph; will be considered academic misconduct and be sanctioned with disciplinary action in accordance with the above paragraph. Both originating and receiving parties will be liable to such sanction. Sharing of class notes and handouts is authorized. Obtaining assistance from others (including tutors or lab techs) for specific programming issues or debugging is Metropolitan Community College 5 Template Rev. 7/24/06 authorized. However, no further collaboration is authorized for any standard assignment. Students wishing to collaborate further must contact the instructor for special assignments. Such special assignments must clearly identify in advance which portions are the responsibility of each individual student wishing to collaborate. The learning objectives, level of difficulty, and typical work involved for each portion must be comparable to that for a single student working alone on the corresponding standard assignment. Each portion will be graded individually. Each portion must clearly represent the competency of the individual responsible for it, and only that individual. The instructor reserves the right to refuse any request for special assignments. Indications of unauthorized collaboration and/or intent to defraud include, but are not restricted to, assignments, submitted by students (not necessarily from the same section) individually under each of their respective names; but which are essentially identical; are essentially identical except for mechanical changes such as differing variable or module names; are essentially identical except for differing comments; or exhibit essentially identical idiosyncratic features such as errors in syntax, style, logic, output formatting, or spelling. The same criteria apply to submissions, by one or more students, where those submissions bear indications of copying from any other unauthorized source. Authorized sources are the student textbook for the class, lecture notes, class handouts, and compiler/interpreter documentation and help materials. In summary, since the instructor must report an individual grade for each student, the work you submit must be your work and only your work. STUDENT WITHDRAWAL: If you cannot participate in and complete this course, you should officially withdraw by calling Central Registration at 402-457-5231 or 1-800-228-9553. Failure to officially withdraw will result in either an instructor withdrawal (IW) or failing (F) grade. The last date to withdraw is noted in the CLASS IDENTIFICATION section of this syllabus. LEARNING SUPPORT MCC's Academic Resource Centers, Math Centers, and Writing Centers offer friendly, supportive learning environments that can help students achieve educational success. Staff members in these centers provide free drop-in assistance with basic computing, reading, math, and writing skills. Self-paced, computer-assisted instructional support in reading, vocabulary, typing, English as a Second Language, and online course orientation is also available. Detailed information about the Academic Resource, Math, and Writing Centers is in the Student Handbook, College Catalog, and online at http://www.mccneb.edu/arc/. ACCOMMODATIONS FOR STUDENTS WITH DISABILITIES: If you have a disability that may substantially limit your ability to participate in this class, please contact a Disability Support Services Counselor located in the Student Services Office on each campus. Metropolitan Community College will provide reasonable accommodations for persons with documented qualifying disabilities. However, it is the student’s responsibility to request Metropolitan Community College 6 Template Rev. 7/24/06 accommodations. For further information, please visit http://www.mccneb.edu/dss/ and/or contact Student Services. TECHNOLOGY SUPPORT For assistance with student email, passwords, and most other MCC technology, contact the Help Desk at 457-2900 or mcchelpdesk@mccneb.edu. TECHNOLOGY RESOURCES: By using the information technology systems at MCC (including the computer systems and phones), you acknowledge and consent to the conditions of use as set forth in the Metropolitan Community College Procedures Memorandum on Acceptable Use of Information Technology and Resources. It is your responsibility as a student to be familiar with these procedures. The full text of the Procedures Memorandum may be found at the following website: http://www.mccneb.edu/procedures/X-15_Technology_Resources_Use.pdf. Departmental Policy: USE OF COLLEGE COMPUTERS When you use computers in College academic resource centers, learning centers, libraries and many classrooms, you will need to login using your student username and password. Your username is the same as your WebAdvisor username and your initial password is your student ID with leading zeros to make it seven digits. If you need assistance, please contact staff at any of the computer labs, learning centers and libraries; your instructor may also be able to help. It is recommended that students save their files to removable media often as they work. The College reserves the right to take steps necessary to maintain the confidentiality of student identity information through the use of automatic logouts and screensavers. Metropolitan Community College 7 Template Rev. 7/24/06 SCHEDULE OF ASSIGNMENTS NOTICE: This syllabus sets forth a tentative schedule of class topics, learning activities, and expected learning outcomes. However, the instructor reserves the right to modify this schedule to enhance learning for students. Any modifications will not substantially change the intent or objectives of this course and will conform to the policies and guidelines of Metropolitan Community College. [In the event the College closes classes for any reason, the dates of the scheduled activities will be followed as outlined.] WEEK/Days DESCRIPTION 1 12/4/2008 Review of INFO 2521 and Course Introduction Structures, Macros, and Conditional Assembly Irvine Chapter 10 2 12/11 32-Bit Windows Programming Irvine Chapter 11 3 12/18 High-Level Language Interface Irvine Chapter 12 Basic 16-bit MS-DOS Programming Irvine Chapter 13 4 1/8/2009 5 1/15 ASSIGNMENT Midterm Exam (Chapters 10-13) 6 1/22 Disk Fundamentals Irvine Chapter 14 7 1/29 BIOS-Level Programming Irvine Chapter 15 8 2/5 Expert MS-DOS Programming Irvine Chapter 16 9 2/12 Advanced Topics Irvine Chapter 17 & Handouts 10 2/19 Advanced Topics & Project 11 2/26 Final Exam (Chapters 14-17) IMPORTANT DATES See attached or http://www.mccneb.edu/sos/enrollman.asp. Note: Metro’s Academic Calendar is at http://www.mccneb.edu/academics/calendar.asp?Theme=2 ) Metropolitan Community College 8 Template Rev. 7/24/06 Student Services Important Dates 2008 – 2009 WINTER December 1, 2008 – February 26, 2009 Winter Tuition Payment Deadline ............................................................... November 3, 2008 (M) Spring/Summer Priority Registration begins .....................................................January 7, 2009(W) Spring/Summer General Registration begins...................................................January 21, 2009(W) Winter Quarter Begins .................................................................................. December 1, 2008(M) Last class before Holiday Recess ................................................................. December 22, 2008(M) Holiday Recess (College Closed) .........................................December 25, 2008 – January 1, 2009 First Day for Faculty to Initiate Instructor Withdrawal ....................................... First class session Martin Luther King Recess/College closed .................................................... January 19, 2009 (M) Fall Term “I” Grades Due .............................................................................. February 21, 2009(S) Last Day of Winter Classes .......................................................................... February 26, 2009(Th) Grades Due and Posted to WebAdvisor by 5 p.m. .............................................. March 2, 2009(M) Graduation Application Deadline Winter Quarter ........................................... February 1, 2009(S) The Last Day to Drop for grades is also the last day for the Instructor to initiate an Instructor Withdrawal (IW) and for students to change from Credit to Audit or Audit to Credit with instructor approval. Students must drop by this date to avoid being assigned a grade of “F”. NOTE: “Last day to drop” refers to grades only. To view the Last Day to Drop specific to your course section, go to the online class schedule at http://www.mccneb.edu/schedule/classschedule.asp and click on the Important Dates next to the course. The Refund drop dates for each course section are automatically calculated based on the start and end dates and the number of sessions for the course. NOTE: Refer to refund policy below to determine the last day to receive a refund for your course. REFUND POLICY Eligibility for a refund is automatically calculated by the date of the withdrawal. The amount of refund is based on the number of class meetings held prior to the withdrawal compared to the total number of scheduled sessions for the course. For refund or account questions call: (402) 457-2405 or 1-800-228-9553, extension 2405. Metropolitan Community College 9 Template Rev. 7/24/06