全文预览

求100 以内的素数武汉理工大学

上传者:upcfxx |  格式:doc  |  页数:22 |  大小:547KB

文档介绍
,然后从bx+3即4开始判断。判断方法是从2开始除这个数,若有余数为0, Р否Р是Р是Р下一个模块Рdl=0?Рdl←[bx+3]Рbx←bx+1Рsi←si+3Р显示buf1在屏幕上Р否Рmov [si+9],0Рmov [si+10],0Р将buf1的内容清零Р是Рah=0?Рdiv dlРal←al+1Р否Рal=dl?Рdl←dl+1Рal←al-1Рal←[bx]Рand al,0Рdl←1Рlea bx,buf;lea si,buf1Рcx←0Р上一个模块Р图2-2 删除合数保留素数并显示模块的流程图Р则表明这个数是合数,就要删除,否则用3除。一直到比这个数小1时还不能除尽,则将这个数保留,计数加1。具体的流程图如图2-2。Р2.3 求和程序Р?否Р是Р是Р否Р上一个模块Рcx←99Рsi←0Рlea bx,buf1Рal←[bx]Рah←0Рdh←[bx+1]Рal=0?Рdh←dh-30hРal←al-30hРdl←10Рmul dlРal←al+ahРsi←ai+axРbx←bx+3Рcx=0?Р下一个模块Р图2-3 求和程序模块的流程图Р?在这里,我采用了一个loop循环,由于之前的模块没有把buf里的合数删除,而buf1的合数的ASCРⅡ码已经被删除,因此选用buf1,所以在使用buf1前,要先将ASCⅡ码转换为数字。程序的流程图如图2-3。Р2.4 求平均值并显示Рax←siРbz←diРand bx,00ffhРdiv blРal←al+1Рand ax,00ffhРbx←10Рand bx,00ffhРdiv blРal←al+30hРah←ah+30hР将平均值转化为ASCⅡ码Рlea bx,buf2Р输出buf2Р结束Р上一个模块Р图2-4 求平均值并显示模块的流程图Р?这个模块采用顺序结构,比较容易,特别要注意数字与其ASCⅡ码转换的问题。

收藏

分享

举报
下载此文档