как правильно организовать сравнение элементов массива в masm

Задача заключается в следующем. Есть массив элементов,необходимо средствами masm узнать,упорядочен ли он по убыванию. Ничего лучше,чем организовать цикл и на каждой итерации сравнивать два соседних элемента и если первый элемент больше,чем второй,то приплюсовывать к счетчику единицу,я не придумал. Но проблема в том,что в конце цикла,переменная i не выводится совсем. Прошу прощения за этот стыд(код):


include \masm32\include\masm32rt.inc

.data
    array_0 dw 12,11,10,9,8,7,6,5,4,3,2,1
    array_1 db 1,3,2,1,5,6,1,5,1,4,5,12
    i dw 0





.code
start:
main proc
    mov ax,0
    mov cx,11

    mov ebx,offset array_0
    jcxz Exit
    CYCLE:
        mov ax, [ebx]
        mov bx,[ebx +2]
        ;printf("%i\n" ,ax)
        cmp ax, bx
        jg MY_INC
        inc ebx
        inc ebx
        loop CYCLE
        printf("%i\n" ,i)



    MY_INC:
        inc i


    Exit:



main endp
end start 


Ответы (0 шт):