0% found this document useful (0 votes)
16 views2 pages

Exam 2 Study Guide

The document outlines key concepts related to the LC-3 architecture, including its address space, registers, instruction set, and addressing modes. It also covers the assembly process, subroutines, stack operations, and the differences between user and super user modes, as well as memory management and I/O operations. Additionally, it highlights the importance of interrupts and the efficiency of interrupt-driven I/O compared to polling.

Uploaded by

garrettfoltyn
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views2 pages

Exam 2 Study Guide

The document outlines key concepts related to the LC-3 architecture, including its address space, registers, instruction set, and addressing modes. It also covers the assembly process, subroutines, stack operations, and the differences between user and super user modes, as well as memory management and I/O operations. Additionally, it highlights the importance of interrupts and the efficiency of interrupt-driven I/O compared to polling.

Uploaded by

garrettfoltyn
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

Unit 5:

 Know the address space and word size of the LC-3


 Know that the LC-3 has 8 general purpose registers which are all the size of a word
 Know how many instructions the LC-3 has
o Know the size of each LC-3 instruction and also the size of the opcode
 Know that every opcode will interpret the bit patters of its operands according to the
data type it’s designed for
 Know and define the 5 addressing modes in the LC-3
o Please give extra attention to the three addressing modes used for data
movement instructions
 Know how the NZP flags behave and what they are used for
 Know the four kinds of instructions in the LC-3
o NOTE: this was first described in Unit 4 but it will be helpful to refresh your
memory for the exam
 Be able to describe the three different kinds of load operations and what the differences
in behavior is between each
o Know the same for the store operations
 Be able to recognize what makes a branch conditional or unconditional in the LC-3
Unit 6:
 Be able to define the concept of a label and what specifically it represents
 Be able to define pseudo-op and know the five pseudo-ops in the LC-3
o Know pseudo-ops are only used by the assembler
 Know the two passes of the assembly process and why they are both needed
 Be able to assemble an assembly program into machine language (binary)
o This includes showing the output of both passes of the assembly process
Unit 7:
 Define subroutine
 Know the difference between the caller and callee
 Understand the similarities and differences between JSR and JSRR instructions
o This includes understanding how the instructions work when executed
 Know what the RET instruction is and why it’s a “fake” instruction
 Be able to define and contrast caller save and callee save
 Refresh your memory on the stack data structure
 Know how the stack operates in the LC-3
o Understand what the stack pointer is, what it’s used for, where it’s stored
o Know that the stack does not physically move and why that’s advantageous
 Know (at a high level) how push and pop’s are done in the LC-3 stack
 Be able to define stack overflow and stack underflow
 Know that the LC-3 stores character strings as ASCII characters terminated by the null
character x0000
Unit 8:
 Define privilege and priority
o Know the difference between user mode and super user mode
 Understand what the PSR is and what it stores
 Understand the difference between user space and system space
 Know that the LC-3 has two stacks and that each stack has its own stack pointer
 Know the purpose of memory mapped I/O
 Be able to define polling and be able to describe a basic input / output service routine
 Know the purpose of both the KBDR / DDR and the KBSR / DSR
 Understand why polling is inefficient
 Understand why a user program would need to use a system call to perform a specific
action
 Know what happens when a TRAP instruction is executed
 Know what happens when an RTI instruction is executed
 Understand why interrupt driven I/O is massively more efficient than polling
 Know the three conditions which must be true in order to interrupt a program
 Know when the processer checks the INT line and what it does if the INT line is active
 Explain why an interrupted program doesn’t know it was interrupted

You might also like