CSE410 System Executable File Format

Overview
A CSE 410 machine executable is a text (character) file containing hex values to be loaded into memory. In a real system, the file would contain binary data, which is more compact and faster to load, but we accept the small penalties of text in trade for the much greater convenience of examining and understanding the file contents.

Here is an example executable file:

!0010  # entry point is 0x0010
@0010
288100     # 0010:  addi    r1 r0 0x100   # build pointer to data
6010       # 0013:  printc  r0 r1 r0      # print 1st character
289001     # 0015:  addi    r1 r1 $1      # move pointer to next byte
6010       # 0018:  printc  r0 r1 r0      # print 2nd character
00         # 001a:  stop                  # that's enough!

@0100
6578 616d 706c 6500  # the C-style string "example" in ASCII
Explanation: