Другие языки программирования и технологии

асемблер-надо вот такое сделать вообще не понмаю

Даны натуральные знаковые числа от 10 до 30. Напечатать те из них, кото-рые делятся на 3 и являются четными.
> натуральные знаковые
Необычное сочетание. Т. к. натуральные числа являются положительными целыми, то их обычно считают беззнаковыми.

Чтобы найти числа с требуемыми свойствами, достаточно проверить их делимость на 6. Но в данной программе отдельно проверяется делимость на 3 и чётность. Masm32, проверка корректности ввода не производится:

.386
.model flat, stdcall
option casemap :none

includelib msvcrt.lib

include windows.inc
include msvcrt.inc

.data
  N dd ?
  Numbers dd 1000 dup (?)

  PromptN db "Введите количество чисел: ", 0
  PromptX db "Введите натуральные числа от 10 до 30:", 13, 10, 0
  Result db 13, 10, "Чётные числа, делящиеся на 3:", 13, 10, 0
  Result2 db "Таких чисел нет. ", 0
  PromptW db 13, 10, 10, "Для завершения нажмите любую клавишу... ", 0
  InFormat db "%u", 0
  PromptF db "%4u: ", 0
  OutFormat db "%4u", 0

.code
N186232391:
    invoke crt_printf, addr PromptN
    invoke crt_scanf, addr InFormat, addr N
    invoke crt_printf, addr PromptX
    mov ecx, N
    mov ebx, ecx
    inc ebx
    lea edi, Numbers
@@:
    push ecx
    mov eax, ebx
    sub eax, ecx
    invoke crt_printf, addr PromptF, eax
    invoke crt_scanf, addr InFormat, edi
    add edi, 4
    pop ecx
    loop @B

    invoke crt_printf, addr Result
    mov ecx, N
    lea esi, Numbers
    xor ebx, ebx
    mov edi, 3
DoLoop:
    push ecx
    lodsd
    push eax
    push eax
    xor edx, edx
    div edi
    pop eax
    and eax, 1
    or eax, edx
    jnz @F
    setz bl
    invoke crt_printf, addr OutFormat
@@:
    pop eax
    pop ecx
    loop DoLoop

    test ebx, ebx
    jnz @F
    invoke crt_printf, addr Result2
@@:
    invoke crt_printf, addr PromptW
    invoke crt__getch
    invoke crt__exit, NULL
    end N186232391

КБ
Кароза Бух
51 590
Лучший ответ
http://www.agpu.net/fakult/ipimif/fpiit/kafinf/rabkab/archkomp/assembler_dlya_chaynikov.pdf
Не благодарите... а лучше бросайте сразу занятия программированием.. не ваше это... вы учится не хотите, а работа программиста 50% времени занятия самообразованием...
К2 *-*
К2 *-*
4 069
Александр Глущенко Пожалуйста посоветуйте мне бесплатную программу т, е среду программирования, чтобы начать программировать на ассемблере