Lunghezza dei caratteri della stringa
Scrivere un programma in assembly che conti e visualizzi il numero di caratteri di una sequenza di valori interi positivi. Infine, se la lunghezza della stringa è pari dovrà essere fornito il seguente messaggio "Lunghezza della stringa pari", altrimenti "lunghezza della stringa dispari".
#make_com#
org 100h
leggi macro stringa
lea dx,stringa
mov ah,0ah
int 21h
endm
stampa macro messaggio
lea dx,messaggio
mov ah,09h
int 21h
endm
mov si,0
mov bl,0
leggi stringa
mov ax,0
mov al,stringa[1]
mov cx,ax
;inizio del ciclo per contare i caratteri
mov al,stringa[si]
conta:
inc si
inc bl
loop conta
mov ah,02h
mov dl,0ah
int 21h
add bl, '0'
stampa msg3
mov ah,02h
mov dl,bl
int 21h
mov ax, 0
mov al, bl
mov bl, 0
mov bl, 2
div bl
cmp ah, 0
je pari
jmp dispari
pari:
stampa acapo
stampa msg1
jmp fine
dispari:
stampa acapo
stampa msg2
jmp fine
fine:
mov ah, 4ch
int 21h
;definizione variabili
stringa db 10 dup'$'
msg1 db "Numeri di caratteri pari$"
msg2 db "Numeri di caratteri dispari$"
msg3 db 'il carattere e: $'
acapo db 13,10,'$'
