Реализации алгоритмов/Решето Сундарама: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 50:
тривиальной двойке.
 
SS_33-процедура с исключением строк и столбцов, «кратных» 3-ем
; Решето Сундарама: отсеивание из последовательности (2)нечетных чисел всех составных чисел.
; Инициализация массива Prime, нулевой элемент которого, соответствующий
; простому числу 3, равен 1. При этом отсеиваются все числа, кратные 3-ем.
xor eax,eax
mov ecx, DWord Ptr NOdd
Строка 63:
inc eax
loop @@INIT
jmp @@NEXT
@@NOTPRIME:
mov Byte Ptr Prime[eax],0 ; составное число, кратное 3-ём (исключение столбца)
Строка 69:
inc eax
loop @@INIT
; ======================
; Отсеивание остальных чисел
@@NEXT:
mov eax,12-1 ; второй диагональный элемент матрицы минус единица
Строка 77:
mov bl,2 ; счетчик для исключения строк, «кратных» 3-ем
;======= Движение по строке =======
; Из-за «переопределенности» (1) следующие пересылки выполняются
; многократно по одному и тому же адресу
@@S0:
mov edi,eax ; сохранение диагонального элемента