Next to do: fix preprocessor directives so that signed values come out correctly
DONE: fixed sign extensions on signed immediates

TO DO NEXT: debug reading addresses for LDR instruction