Saturday, 9 August 2014

8086 program to check whether a string is a palindrome or not

This is an 8086 program to check whether a string is a palindrome or not. If you have any doubts, please let me know.

.MODEL SMALL
.DATA
MSG DB 'ENTER A STRING:','$'
INP DB 100,0,100 DUP('$')
MSG2 DB 0AH, 0DH,'PALINDROME','$'
MSG3 DB 0AH, 0DH,'NOT A PALINDROME','$'
.CODE
START:
MOV AX,@DATA
MOV DS,AX

LEA DX,MSG
MOV AH,09H
INT 21H

LEA DX,INP
MOV AH,0AH
INT 21H

LEA SI,INP
LEA DI,INP
         MOV CX,0000H

CONT:   MOV AL,[DI+02H]
CMP AL,0DH
JE L1
INC CX
INC DI
JMP CONT

L1: DEC DI

L2:    MOV AL,[DI+02H]
    CMP [SI+02H],AL
    JNE NP
    INC SI
    DEC DI
    LOOP L2  

P:  LEA DX,MSG2
    MOV AH,09H
    JMP LAST
NP: LEA DX,MSG3
    MOV AH,09H
LAST:INT 21H
   
.EXIT
END START



































1 comment: