试写一个LC-3汇编程序,判断一个字符串是否是“回文”(palindrome)。所谓“回文”,就是正读或反读结果都是一样的。例如,字符串"racecar”就是一个回文。假设x4000存放了一个格式为.STRINGZ的字符串。判断该字符串是否是回文,如果是则R5返回内容1;如果不是,则R5返回0。填充(a)~(e)处的指令,完成整个程序。. .ORIG x3000
LD R0 , PTR
ADD R1 , R0, #0
AGAIN LDR R2 ,R1 ,#0
BRz CONT
ADD R1 ,R1 ,#1
BRnzp AGAIN
CONT --------------------------------(a)
LOOP LDR R3,R0, #0
----------------------------------(b)
NOT R4 ,R4
ADD R4 ,R4 ,#1
ADD R3 ,R3, R4
BRnp NO
-------------------------------------(c)
--------------------------------------(d)
NOT R2 ,R0
ADD R2 ,R2 ,#1
ADD R2 ,R1, R4
BRnp YES
--------------------------------------(e) YES AND R5 ,R5, #0
ADD R5 ,R5 ,#1
BRnzp DONE
NO AND R5 ,R5, #0
DONE HALT
PTR .HILL x4000
.END