Подсчитать количество четных элементов в массиве - Assembler

Узнай цену своей работы

Формулировка задачи:

Дан массив: байтов. Подсчитать количество четных элементов. Вот составил программу, выводит неправильный ответ. Помогите, пожалуйста, где я ошибся?
Листинг программы
  1. .model small
  2. .stack 100h
  3. data segment
  4. array DB 14, 12, 11, 20, 60
  5. data ends
  6. code segment
  7. assume ds:data, cs:code
  8. org 100h
  9. start:
  10. mov DI,0
  11. mov CX,5
  12. mov DL,0
  13. mov si,0
  14. mov BL,2
  15. AGAIN:
  16. Mov ah,0
  17. mov AL,array[SI]
  18. DIV BL
  19. CMP DL,AH
  20. JNE AGAIN2
  21. INC DI
  22. AGAIN2:
  23. INC SI
  24. LOOP AGAIN
  25. code ends
  26. end start

Решение задачи: «Подсчитать количество четных элементов в массиве»

textual
Листинг программы
  1. .model small
  2. .data
  3. mas db 1,2,3,4,5,1,1,1,1,1
  4. res dw $-offset mas
  5. .stack 100h
  6. .code
  7. start:
  8. mov ax,@data
  9. mov ds,ax
  10. lea si,mas
  11. mov cx,res
  12. cld
  13. xor ax,ax
  14. M:lodsb
  15.   and al,1
  16.   sub res,ax
  17.   loop M    
  18. mov ax, 4c00h
  19. int 21h
  20. end

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.875 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы