CMPS 224 Assembly Language Programming (5)
Introduction to operations on binary numbers,
machine architecture and assembly language programming;
covers MIPS and x86 instruction set architectures.
Prerequisite: CMPS 221.
Programming skill in a high level language such as C/C++/Java.
5 quarter units. 4 units lecture (200 minutes), 1 unit lab (150 minutes).
Required for CE, CS and EE.
Appendix A from Computer Organization & Design by Patterson & Hennessey;
3rd Ed. Appendix A is available online. If you purchase
the latest edition of Computer Organization & Design, the material
is in Appendix B.
Additional material will be available online.
Donna Meyers, Dr. Wei Li
This course covers the following ACM/IEEE Body of Knowledge student learning
outcomes:
CC-AR: Architecture and Organization
CE-CAO: Computer Architecture and Organization
The course maps to the following performance indicators for
Computer Science (CAC/ABET) and Computer Engineering (EAC/ABET) and
Electrical Engineering (EAC/ABET):
- (CAC PIb1): Identify key components and algorithms necessary for a solution.
- Take-home final project.
- (CAC PIb2): Produce a solution within specifications.
- Take-home final project.
- (CAC PIc4): Implement the designed solution for a given problem.
- Take-home final project.
- (CAC PId4, EAC PId4): Meet deadlines and achieve project goals.
- Take-home final project.
- (EAC PIc1): Follow systematic and logical design procedures and
define specifications to meet project requirements.
- Take-home final project.
Week 01 |
operations on binary, octal and hexadecimal numbers |
Week 02 |
arithmetic, shift & rotate operations |
Week 03 |
subroutine linkage & call frames |
Week 04 |
instruction encoding, jumps & branches |
Week 05 |
program optimization |
Week 06 |
logical and bit-field operations & condition testing |
Week 07 |
multiplication, division, branch delay slot |
Week 08 |
intro to x86-32 |
Week 09 |
intro to x86-64 |
Week 10 |
x86-64 code optimization |
A 90%
B+ 87%
Lab/Hw Assignments ........15% B 83%
Midterm 1 .................30% B- 80%
Midterm 2 .................30% C+ 75%
Final Project..............25% C 70%
C- 60%
D+ 55%
D 50%
D- 40%
F below 40%
EAC/CAC Math and Basic Sciences |
1 Credit Hour |
|
CAC Computing/EAC Engineering Topics |
2 Credit Hours |
Fundamental |
Donna Meyers on January 23, 2014
Approved by CEE/CS Department on January 31, 2014
Effective Wtr 2014