The Assembly Template
Video: The LC-3 Assembly Template — Text Alternative
This video demonstrates the structure of the LC-3 assembly template in LC3Tools. Key elements visible on screen:
- Header comment block: lines beginning with
;for Assignment, Module, Name, Description, and Notes .ORIG x3000: assembler directive setting the program's starting memory address to x3000Done HALT: final executable instruction —Doneis an optional label;HALTstops the processor clock;End of Program: comment marking that no code executes afterHALT;Data Declarations: section belowHALTfor allocating memory locations and defining data.END: assembler directive marking the end of the source file
Students will use and complete the assembly template for all graded work. This file is in the LC-3 Docs zip file downloaded earlier

Header
The top section with lines started by a semicolon (;) is filled in with assignment and student name info. There is a line to describe the program at a high level and another to include any notes ot comments
Main Body
The program will be written between the .ORIG x3000 and the ;End of Program lines.
.ORIG x3000
Done HALT
;End of Program
.ORIG x3000is the assembler directive that identifies memory location 300016 as the location to load and execute the program
Done HALTis the last executable line of code in an assembly program
Doneis an optional label used to other parts of the program to terminal the program early
HALTis a build-in function that stops the system clock so that no more instructions can execute
;End of Programis a comment to remind programs that no code will be executed afterHALT
Data Declarations
The area under the ;Data Declarations------------- comment is reserved for allocating memory locations and initialized data
Code End
Like .ORIG, .END is an assembler directive informing that there is no more programs or data allocations to assemble
