CS 301:Assembly Language
Course Description:
The student will learn to program in assembly language. The student will work
with binary and hexadecimal numbering systems, computer architecture, and an
assembly language instruction set(s). The student will write assembly language
programs. Prerequisites: CS 220 and CS 255. 3:0:3
Learning Outcomes:
Upon completion of this course, the student should be able to:
- Explain basic concepts - applications of assembly language, basic
concepts, machine language, data representation, and defining constants
and variables.
- Explain Processor Architecture - basic microcomputer design,
instruction execution cycle, IA-32 processor architecture, memory
management, components of a microcomputer, and the input-output system.
- Demonstrate creativity and problem-solving skills.
- Use the TextPad integrated development environment to enter, run, and debug Assembly programs.
- Assemble, link, debug, and test Assembly programs.
- Write Assembly programs that use proper style and documentation.
- Demonstrate the proper use of procedures - linking to an
external library, stack operations, defining and using procedures,
flowcharts, and top-down structured design.
- Demonstrate proper use of data transfers, addressing, and
arithmetic.
- Given a problem description, the student should be able to decide on appropriate
data transfer and arithmetic instructions, assembly-link-execute
cycle, operators, directives, expressions, JMP and LOOP
instructions, and indirect addressing.
- Write Assembly programs that use:
- simple data transfer
- arithmetic instructions
- operators and directives
- expressions
- JMP and LOOP instructions
- indirect addressing
- boolean and comparison instructions
- conditional jumps and loops
- high-level logic structures
- finite state machines
- shift and rotate instructions with useful applications
- multiplication and division
- extended addition and subtraction
- ASCII and packed decimal arithmetic
- BIOS-level programming - keyboard input, video text and graphics
programming
- Calls to the MS-DOS interrupts for both console and file
input-output
Assessment Measures:
| Assessment Tool |
Linkage to Learning Outcome #: |
| |
|
| Homework Assignments: |
|
| Assign a sufficient amount of homework such that
all of the above objectives are covered. |
All |
For each homework assignment, include one or more of:
short answer, multiple choice, trace the given code, debug the given code |
1, 2, 5, 7, 8 |
| For each homework assignment, include one or more
programming projects. |
3-9 |
| In order to meet the "creativity and problem-solving
skills" objective, the student must be required to produce programming project
solutions from given problem descriptions. Note that this objective is not met if
a student is only able to produce solutions by pasting together given code fragments.
Although pasting code fragments together is sometimes appropriate, it does not enforce
the development of creativity and problem-solving skills. |
3-9 |
| |
|
| Exams: |
|
Include one or more of:
short answer, multiple choice, trace the given code, debug the given code. |
1, 2, 5, 7, 8 |
| Given a problem description, produce a solution in
the form of a short program or a method(s). |
3, 6-9 |
Textbooks
To view the approved textbook list, click
here.
^ Back to the Top
---------------------------------
University Resources
This page was last modified on Cannot perform flastmod(): Win32 Error Code = 2
|