用汇编语言球100以内的素数

来源:百度知道 编辑:UC知道 时间:2024/06/23 12:21:30
求100以内的素数。
要求:
(1)以十进制输出这些素数,每行10个,每输出一个素数都要有数秒的停顿。
(2)统计这些素数的个数,以十进制形式输出。
(3)计算这些素数之和,以十进制形式输出,并让该和闪烁3次。
(4)数据的输入和结果的输出都要有必要的提示,且提示独占一行。
(5)要使用到子程序。
请大家帮帮忙,这是我们期末的大作业,要求就是这样

DSEG SEGMENT
count dw 0;存放素数的个数
sum dw 0;存放素数的和
sushu db 100 dup(?);存放素数
msgsushu db 'all of sushu are:','$';显示素数的提示信息
msgcount db 0dh,0ah,'count of sushu is:',0dh,0ah,'$';显示素数个数的提示信息
msgsum db 0dh,0ah,'sum of sushu is:',0dh,0ah,'$';显示素数和的提示信息
DSEG ENDS

CSEG SEGMENT
assume cs:CSEG, ds:DSEG

MAIN PROC FAR ;主程序入口
call jisuan;将100以内素数的个数存入COUNT单元中,素数的和存入SUM单元中,并将素数存入内存自SUSHU开始的单元中

lea dx,msgsushu;显示素数的提示信息
mov ah,9
int 21h
call dispsushu;显示素数

lea dx,msgcount;显示素数个数的提示信息
mov ah,9
int 21h
call dispcount;显示素数个数

lea dx,msgsum;显示素数和的提示信息
mov ah,9
int 21h
call dispsum;显示素数和

mov ah,1;按任意键退出
int 21h
mov ax, 4c00h ;程序结束,返回到操作系统系统
int 21h
MAIN ENDP

jisuan proc near
mov ax, dseg
mov ds, ax
lea di,sushu
mov bh,0