pass3_:
mov si,buff2
mov cx,26
pass3_1:
mov al,[si]
;读取第一个字符,暂存
inc si
;第二个字符,不变
inc si
mov dl,[si]
;读取第三个字符,暂存
mov [si],al
;交换第一个字符,变更为第三个字符
dec si
;第二个字符不变
dec si
mov [si],dl
;交换第三个字符,变更为第一个字符
add si,3
loop pass3_1
ret
;代码在Fasm编译器中通过,在DosBox ,WinXP中通过。
buff dw 0
buff1 db 'abcdefghijklnmopqrstuvxyz'
buff2 db ' '
buff3 db ' '