Questo sito ha bisogno della pubblicità per poter essere mantenuto. Gentilmente disabilita il blocco della pubblicità nel tuo browser per questo sito web.
Caricamento in corso...Caricamento in corso...
Caricamento in corso...

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,'$'