A good morning to start off is to get this simple program working. This is an improvement of the previous palindrome checker posted. What can we benefit from this anyway?
; palindrome checker
start:
mov ah, 0ah
lea dx, strptr
int 21h
lea di, string
lea si, strlen
mov cl, [si]
xor ch, ch
mov bx, cx
lea si, string
shr cl, 1
check:
mov dl, [si]
mov dh, [di+bx-1]
cmp dl, dh
jne notpal
inc si
dec di
loop check
cmp dl, dh
je pal
notpal:
mov ah, 09h
lea dx, msg2
int 21h
int 20h
pal:
mov ah, 09h
lea dx, msg1
int 21h
int 20h
strptr label byte
maxlen db 49
strlen db ?
string db 50 dup ('$')
msg1 db '',10,'string is a palindrome!$'
msg2 db '',10,'string is not a palindrome!$'
“If God’s people which are called by His name, will humble themselves and pray, and seek His face, and turn from their wicked ways; then He will hear from heaven, and will forgive their sins, and will heal their land.” - 2 Chron 7:14
No comments:
Post a Comment