Подсчитать количество четных элементов в массиве - 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

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


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

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

8   голосов , оценка 3.875 из 5
Похожие ответы