Part-Time Programs in Engineering and Applied Science, Johns Hopkins University

Assembly Language Programming
525.120


Course Description
This course introduces the student to the programming of computers at the machine level. General concepts relevant to microprocessors, minicomputers, and mainframes are presented, including memory access, numerical representations, programming models, and coding techniques.

Syllabus

  1. Machine/Assembly/High-level languages; processor architecture
  2. 8080/6800 data transfer instructions; 6800 addressing modes; Fox Trainer
  3. Numerical representations; flags; 8080 ALU/jump instructions
  4. Example routines; Lab #1 assignment
  5. Programmer's reference card; example routines
  6. Delay loops; Lab #2 assignment; Z-80; Zad assembler; 6800 ALU/branch instructions
  7. Stack; subroutines; parameter passing
  8. Example subroutines; Fox I/O routines; Lab #3 assignment
  9. I/O, interrupts
  10. Lookup tables; State transition tables; Lab #4 assignment; MCS-48 microcontroller
  11. Program methodologies
  12. Final exam

Prerequisites
Programming competence in a high-level language such as BASIC or PASCAL.

Instructor
Robert Glaser heads IC Engineering, Inc., a design and manufacturing firm concentrating in telecommunications equipment. He holds a Ph.D. degree in electrical engineering from The Johns Hopkins University, where he also teaches a laboratory course in microprocessing in the undergraduate program.
E-mail the instructor.

Computer Lab Requirements
No specific computer requirements are necessary for this course. A PC is helpful.

Textbook
Microprocessor Fundamentals (Schaum's Outline) by Roger Tokheim


Return to Undergraduate Engineering Courses | Mechanical Engineering | Part-Time Engineering

November 1997