; Sa se scr un prog in care se introduc 2 siruri de carac numerice
; in BH se va contoriza de cate ori cifra din I sir este mai mica decat din al II-lea sir
; iar in DH - de cate ori cifra din I sir este mai mare decat cea din al II-lea


.radix 16           ; in program numerele vor fi hexazecimale
.model small
.data               ; segmentul de date
s1 db "12345678"    ; shir de bytes
l1 equ $-s1         ; constanta l1 = (adresa curenta) - (adresa lui s1), adica lungimea s1
s2 db "876543219"
l2 equ $-s2

.code               ; segmentul de cod
start:              ; eticheta
; 1) Initializarea segmentelor de adrese
	mov ax, @data
	mov ds, ax         ; segmentul de date este .data
	mov es, ax         ; extra segmentul este la fel .data
	mov si, offset s1  ; indexul la sursa
	mov di, offset s2  ; indexul la destinatie
	
; 2) Determinarea lungimii minime de sir si plasarea ei in CL
	mov cx, l1
	cmp cx, l2
	jl n1
	mov cx, l2
n1: 
; 3) Pregatirea contoarelor
	mov bh, 0
	mov dh, 0

; 4) Ciclul de comparare
loop:	cmpsb
	jl b
	jg d
	jmp endloop
b:	inc bh
	jmp endloop
d:	inc dh
	
endloop:
loopne loop	

t:jmp t
end start
