汇编判断质数
神杀中龙 2006-08-28 11:53:51 start:
mov ax,dseg
mov ds,ax
mov es,ax
mov ax,sseg
mov ss,ax
mov sp,size sktop
call Manage_RegisterClear
lea si,DATA
lea di,PRIME
mov cx,CNT
_bloop:mov bl,01h
call NumValue_PrimeNum
cmp dl,0
je _conpa
mov [di],dl
inc di
_conpa:inc si
loop _bloop
exit:call Manage_exit
子程序
;子程序 NumValue_PrimeNum[Me]
;子程序功能 判断一个数是否为质数
;入口条件 al bl=1
;出口条件 dl
NumValue_PrimeNum proc
_loop: mov al,[si]
inc bl
div bl
cmp bl,[si]
je _PrimeNumRel
cmp ah,0
je _PrimeNumRet
xor ax,ax
jmp _loop
_PrimeNumRel:mov dl,[si]
xor bx,bx
jmp _PrimeRet
_PrimeNumRet:xor bx,bx
xor dx,dx
_PrimeRet: ret
NumValue_PrimeNum endp
希望大侠给个更精简的。