在以下代码中,我能够反转字符串,但我不知道如何在此代码中添加函数以获得以下结果:使用包含'emu8086.inc'的字符串的反向大小写和顺序
输入输出AbCDeF_XYz:Zyx_fEdcBa
name "REVERSE"
include "emu8086.inc"
print "Enter a string:"
MOV DX,11
CALL get_string
printn
MOV DI,0x0
ReadString:
MOV AL,[ds+di]
CMP AL,0x0
JE Reverse
INC DI
PUSH AX
JMP ReadString
Reverse:
POP AX
MOV AH,0xE
INT 0x10
CMP AL,0x0
JNE Reverse
HLT
DEFINE_GET_STRING
END
请人帮忙 – BhhooHD
搜索很快变成了:http://stackoverflow.com/questions/33578121/emu8086-change-case-of-the-entered-string-and-reverse-it,这有一个答案。在推动角色之前,或在弹出角色之后,您可以对角色进行大小写交换。 (测试它们是否在ascii范围内,那么xor与0x20,因为'a' - 'A'= 0x20'。所以你只需要设置或清除该位在大写与小写之间变化。) –
I删除我以前的评论,我现在看到相反的'case'大声笑 –