Подсчитать количество четных элементов в массиве - Assembler
Формулировка задачи:
Дан массив: байтов. Подсчитать количество четных элементов.
Вот составил программу, выводит неправильный ответ. Помогите, пожалуйста, где я ошибся?
Листинг программы
- .model small
- .stack 100h
- data segment
- array DB 14, 12, 11, 20, 60
- data ends
- code segment
- assume ds:data, cs:code
- org 100h
- start:
- mov DI,0
- mov CX,5
- mov DL,0
- mov si,0
- mov BL,2
- AGAIN:
- Mov ah,0
- mov AL,array[SI]
- DIV BL
- CMP DL,AH
- JNE AGAIN2
- INC DI
- AGAIN2:
- INC SI
- LOOP AGAIN
- code ends
- end start
Решение задачи: «Подсчитать количество четных элементов в массиве»
textual
Листинг программы
- .model small
- .data
- mas db 1,2,3,4,5,1,1,1,1,1
- res dw $-offset mas
- .stack 100h
- .code
- start:
- mov ax,@data
- mov ds,ax
- lea si,mas
- mov cx,res
- cld
- xor ax,ax
- M:lodsb
- and al,1
- sub res,ax
- loop M
- mov ax, 4c00h
- int 21h
- end
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д