Я не могу организовать переходы для следующего псевдокода (до сборки 8086):
array = ...numbers set...
cl = 2
num = 0
si = 0
while(si != 11)
{
ax = 0
al = array[si]
// divide with assembly
div cl
if(ah = 0)
{
n+1
}
si+1
}
Я пробовал что-то подобное:
.data
array db 0Fh, 45h, 0A1h, 78h, 0CFh, 0AAh, 8Fh, 19h ; Array
p db 0 ; Number of even numbers in the array
.code
xor si, si
xor cx, cx
mov cl, 2
again:
xor ax, ax
mov al, array[si]
div cl
cmp ah, 0
je eq
inc si
cmp si, 11
jne again
eq:
inc p
inc si
cmp si, 11
jne again
У вас есть идеи, как исправить этот код?