F DS.W 1 //フラグ変数 I DS.W 1 J DS.W 0 TWO DC.W 2 MOVE.W D1,J DIVU.W TWO,J //J=D1/2 LP2 COMP.W I,J BEQ TRUE //if I=J → D1は素数 ADDI.W #1,I //I=I++ MOVE D1,D0 //D0=D1 LP1 CMPI.W #0,D0 //if D0=0 → D1は素数ではない BEQ FALSE SUB.W I,D0 //D0=D0-I CMPI.W #0,D0 BLT LP2 //if D0<0 goto LP2 CMPI.W #0,D0 BGT LP1 //if D0>0 goto LP1 FALSE MOVE.W #0,F //Fに0を代入 TRUE MOVE.W F,D0 //Fの値をDOに代入 ENDD0が0ならば、D1は素数ではない。1ならば、D1は素数。