如何转换句子中的特定单词
How to transform specific words on sentence
我想改造一个句子。
例子:
今天 too.To 天气寒冷。
我想这样做
星期二是 tww.Tw 天气。
我做了一些事情,但我只是将小写字母转换为大写字母(大写锁定)。我该如何做我在代码中禁止的内容
ADD DL,32 ;i transform character from Caps lock to small
JMP E4 ; i go to the next tranform
E3: SUB DL,32 ; i tranform from small to Caps lock
E4: MOV AH,02H ; appear DL
INT 21H ;
INC SI ; increase by 1
E5: LOOP E2 ; repeat the step "E2" untili "E4"
JMP EXIT
END:
LEA DX,NOINPUT
MOV AH,09H ; Type the message
INT 21H
EXIT:
MOV AH,4CH ; output
INT 21H
了解字符的位模式对于理解应该做什么至关重要。
W = 0101 0111 W = 0111 0111
O = 0100 1111 O = 0110 1111
唯一真正重要的位是 5 -> 0 所以
O = 01111 = 字母表中的第 15 个字母
W = 10111 = 字母表中的第 23 个字母
mov al, 'W'
xor al, 0b11000 ; Changes W to O
xor al, 0b11000 ; Changes O to W
你可以看到,这样做,无论是大写还是小写都没有关系,因为这些位没有被修改。
我想改造一个句子。 例子: 今天 too.To 天气寒冷。 我想这样做 星期二是 tww.Tw 天气。
我做了一些事情,但我只是将小写字母转换为大写字母(大写锁定)。我该如何做我在代码中禁止的内容
ADD DL,32 ;i transform character from Caps lock to small
JMP E4 ; i go to the next tranform
E3: SUB DL,32 ; i tranform from small to Caps lock
E4: MOV AH,02H ; appear DL
INT 21H ;
INC SI ; increase by 1
E5: LOOP E2 ; repeat the step "E2" untili "E4"
JMP EXIT
END:
LEA DX,NOINPUT
MOV AH,09H ; Type the message
INT 21H
EXIT:
MOV AH,4CH ; output
INT 21H
了解字符的位模式对于理解应该做什么至关重要。
W = 0101 0111 W = 0111 0111
O = 0100 1111 O = 0110 1111
唯一真正重要的位是 5 -> 0 所以
O = 01111 = 字母表中的第 15 个字母
W = 10111 = 字母表中的第 23 个字母
mov al, 'W'
xor al, 0b11000 ; Changes W to O
xor al, 0b11000 ; Changes O to W
你可以看到,这样做,无论是大写还是小写都没有关系,因为这些位没有被修改。