В следующем примере программы мы выполним сравнение двух массивов. Программа вернет в аккумуляторе индекс где элементы были не равны. Если массивы равны, то вернёт в аккумуляторе -1.
- ; Автор: Довгополов Евгений Сергеевич
- array1:_db 01h, 02h, 03h, 04h, 05h, 06h, ___________07h, 08h, 09h, 0Ah
- array2:_db 01h, 02h, 03h, 01h, 05h, 06h, ___________07h, 08h, 09h, 0Ah
- result: db 00h
- main:
- ____lxi ____h, array1
- ____lxi ____d, array2
- ____mvi ____b, 00h
- ____mvi ____c, 0Ah
- CompareLoop:
- ____ldax ___d
- ____cmp ____m
- ____jnz ____Unequal
- ____inx ____h
- ____inx ____d
- ____inr ____b
- ____dcr ____c
- ____jnz ____CompareLoop
- ____mvi ____a, 0FFh
- ____hlt
- Unequal:
- ____mov ____a, b
- ____sta ____result
- ____hlt