RosettaCodeData/Task/Reverse-a-string/LC3-Assembly/reverse-a-string.lc3

36 lines
705 B
Plaintext

.ORIG 0x3000
LEA R1,STRING
LEA R2,GNIRTS
LD R3,MINUS1
NOT R5,R1
ADD R5,R5,1
SCAN LDR R4,R1,0
BRZ COPY
ADD R1,R1,1
BRNZP SCAN
COPY ADD R1,R1,R3
ADD R4,R1,R5
BRN COPIED
LDR R4,R1,0
STR R4,R2,0
ADD R2,R2,1
BRNZP COPY
COPIED AND R4,R4,0
STR R4,R2,0
LEA R0,GNIRTS
PUTS
HALT
MINUS1 .FILL 0xFFFF
STRING .STRINGZ "If thou beest he -- but O how fall'n! how chang'd"
GNIRTS .BLKW 128
.END