Hi what's the problem of this code? It runs fine and successfully but the results are all just NOT PALIDROME

Viewed 37

Code that determines if the word is Palindrome or Not

Code:

org 100h
.MODEL SMALL
.STACK 64H
.DATA
STRING DB ?
MSG1 DB 'PALINDROME$'
MSG2 DB 'NOT PALINDROME$'
MSG3 DB 'ENTER STRING:  $'
NEW DB 0AH,0DH

.CODE
MAIN PROC
MOV AX,@DATA
MOV DS,AX

MOV AH,9
LEA DX,MSG3
INT 21H

MOV BX,OFFSET STRING
INPUT:
    MOV AH,1
    INT 21H

    CMP AL,13
    JE FIND_PALINDROME

    MOV [BX],AL
    INC BX
    JMP INPUT

FIND_PALINDROME:
MOV DI,OFFSET STRING
MOV CX,4
CHECK:
    
    MOV DX,[BX]
    CMP [DI],DX
    JNE EXIT

    INC DI
    DEC BX
    LOOP CHECK

    MOV AH,9
    LEA DX,MSG1
    INT 21H
    JMP EXIT_ALL

EXIT:
    MOV AH,9
    LEA DX,MSG2
    INT 21H

    EXIT_ALL:
    MOV AH,4CH
    INT 21H
    MAIN ENDP
    END MAIN
ret
0 Answers
Related