Найти произведение нечетных отрицательных элементов, имеющих четные индексы - Assembler
Формулировка задачи:
В заданной конечной последовательности целых чисел найти
произведение нечетных отрицательных элементов, имеющих четные индексы. Assembler. Спасибо.
Решение задачи: «Найти произведение нечетных отрицательных элементов, имеющих четные индексы»
textual
Листинг программы
mess0 DB 'RESULT: -$' array DB 58,1,-13,-49,-1,-2,70,-36,-18,123,-31,-40,8,66 len = $ - array ; длина массива start: MOV AH,9 ; результат MOV DX,mess0 ; INT 21h ; MOV CX,len/2 ; длина цикла MOV SI,array ; указатель на массив XOR AX,AX ; XOR BX,BX ; место под результат @@: LODSB ; первый/чётный индекс (отсчёт с нуля) OR AL,AL ; взводим флаги.. JNS miss ; положительные числа пропускаем NEG AL ; отрицательные - инвертируем JP miss ; чётные/отрицательные пропускаем ADD BX,AX ; нечётные - суммируем. miss: ; INC SI ; сл.чётный индекс.. LOOP @b ; SHLD AX,BX,16 ; перемещаем сумму в AX AAM ; переводим её в распакованное/10-тичное XCHG AH,AL ; ADD AX,3030h ; ...и в ASCII INT 29h ; SHR AX,8 ; INT 29h ; выводим результат на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д