Подсчет элементов не равных нулю - Assembler
Формулировка задачи:
есть программа подсчета нечетных элементов. как написать подсчет элементов не равных нулю?
mov ax, data mov ds, ax lea bx, mas ;берём в bx адрес первого элемента mov cx, len ;счетчик цикла xor ax, ax ;обнуляем регистр cikl: mov al, [bx] ;прибавляем к al байт, адрес которого хранится в bx test ax,1 ;проверяем на четность jnz next inc numb; увеличиваем, если четно next: inc bx ;переходим к следующему элементу loop cikl
Решение задачи: «Подсчет элементов не равных нулю»
textual
Листинг программы
test ax,ax jz next
Объяснение кода листинга программы
- Создается инструкция
test ax, ax
, которая выполняет логическое И между регистрами ax и ax. - Инструкция
jz next
выполняет условный переход к меткеnext
, если результат логического И равен нулю.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д