Eratosthenes筛法求1——100000之间所有的素数(32位汇编语言)

原创 2013年12月06日 00:37:53
include io32.inc .dataarray byte 100001 dup(30h) .codestart:mov esi,2 ;用来记录某数,方便以后找所有可以被其整除的数xor edi,edi ;用来记录素数的个数 mov ebx,offset array ;ebx为数组array的指针 mov ecx,99998 ;ecx记录总数outlp: cmp byte ptr [ebx+esi],30h ;判断eax是否被标记为非素数 jne s3 mov edx,esi add edi,1 ;记录素数的个数加1s2: add edx,esi ; 即可以在以后找出其1、2、3……倍的所有数字 cmp edx,100000 jg s3 mov array[edx],31h ;找出所有被整除的数,并把它标记为1 jmp s2 s3: inc esi loop outlp ;ecx<-ecx-1 mov eax,edi ;输出素数的个数 call dispsid exit 0 end start
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

筛法求素数的c++实现

  • 2010-12-06 18:50
  • 429B
  • 下载

算法——筛法求素数

筛法素数打表很早就已经学过筛法的代码了。当时就是强行给记下代码了。现在结合一下思想,把最优化的办法找出来。筛法求素数不同于我们之前在C语言书上说的那两种方法。第一种是在[2,n)上不被整除。第二种是在...

利用筛法求素数

O(n)筛法求素数

  • 2015-01-31 16:45
  • 454KB
  • 下载

数组之用筛法求N之内的素数

筛法求素数(源代码C++)

  • 2011-07-04 10:43
  • 490B
  • 下载

UVA 10006 - Carmichael Numbers 数论(快速幂取模 + 筛法求素数)

Carmichael Numbers  An important topic nowadays in computer science is cryptography. Some...

筛法求素数

筛法是一种高效的构造素数表的算法。   在给出代码前先介绍一个数论的定理。设a>1,则a=p1^n1*p2^n2...pk^nk.其中p1、p2...pk是质数,n1、n2...是正整数,并且在不计顺...

FOJ Problem 1075 分解素因子 (筛法求素数Problem 1075 分解素因子 Accept: 1650 Submit: 3102 Time Limit: 1000 mSe)

Problem 1075 分解素因子 Accept: 1650 Submit: 3102 Time Limit: 1000 mSec Memory Limit : 32768 KB ...

欧拉线性筛法求素数(顺便实现欧拉函数的求值)

我们先来看一下最经典的埃拉特斯特尼筛法。时间复杂度为O(n loglog n)int ans[MAXN]; void Prime(int n) { int cnt=0; memset(...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)