The design of an Assembler, syntax analysis, code generation, macros, linkers and loaders. In particular, the first three phases of the software development cycle (requirements analysis, system specification, and system design) will be implemented for a large software system.
Policies:
Prerequisites: C.S. 320 Assembly Language Programming Professor: Douglas J. Ryan Office: Strain Science Building - Room 201 Office Hours: 1:00-2:00 M-F Phone: 359-2135
Reference books in the lab: Managing projects with make by Oram and Talbott Guide to UNIX Using Linux by Dent and Gaddis Assembly Lnaguage for Intel-Based Computers by Irvine Program Translation Fundamentals by Calingaert ASM86 Assembly Language Reference Manual An Introduction to ASM86 iAPX 86/88, 186/188 User's Manual MS-DOS Encyclopedia
Approximate Course Grading:Lexical Analyzer Implementation .....50 pts 6502 Hand Assembly ..................30 pts Symbol Table Design .................25 pts Symbol Table Implementation .........50 pts Midterm .............................75 pts x86 Hand Assembly ...................25 pts x86 Link/Execute ....................25 pts Project Specification ...............35 pts Final ..............................100 pts Total ----------------------------->415 ptsPercent 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)Program Grading:
1) 80% successful execution
2) 10% acceptable structure and style (no redundant code, looking for speed and efficiency)
3) 10% documentation
1) A program can be turned in up to 24 hours late with a penalty of 20% of the program points. Any program turned in more than 24 hours late will not be accepted.
2) A program that does not successfully assemble/compile or produces no output loses 80%.
3) The instructor reserves the right to raise or lower a student's grade based on class participation and attendance.
4) No early or late exams/finals will be given.
5) The cheating policy is defined in Pacific Stuff (beginning on page 60) & the Pacific Catalog (beginning on page 26) as well as the Academic Policy that each of you signed. Be sure you read or reread this policy carefully. Every function written for CS440/441 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!!!