汇编语言上机考试三星题11(二刷)

判断一个不超过65535的整数是否为质数。

先看是不是0 1 2 是的话直接输出质数

不是的话BX=BUF-1

然后让BUF除BX,看余数是不是0,是零的话就不是质数

除到1之前停下来,输出是质数

DATAS SEGMENT

    BUF DW 8;此处输入数据段代码 

    YES DB 'YES','$'

    NO DB 'NO','$'

DATAS ENDS

STACKS SEGMENT

    ;此处输入堆栈段代码

STACKS ENDS

CODES SEGMENT

    ASSUME CS:CODES,DS:DATAS,SS:STACKS

START:

    MOV AX,DATAS

    MOV DS,AX

    MOV BX,BUF

    CMP BX,2

    JBE SHI

    DEC BX


XUNHUAN:

CMP BX,1

JE SHI

    MOV AX,BUF

    MOV DX,0

    DIV BX

    CMP DX,0

    JE BUSHI

    DEC BX

    JMP XUNHUAN

BUSHI:

LEA DX,NO

MOV AH,9

INT 21H

JMP END0

SHI:

LEA DX,YES

MOV AH,9

INT 21H

JMP END0

END0:




    ;此处输入代码段代码

    MOV AH,4CH

    INT 21H

CODES ENDS

    END START

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 5.1个有符号字数组以0为结束标志,编程求这个数组的最大值、 最小值、平均值。 终于弄明白这道题怎么做了,昨天调了...
    魔一方阅读 3,945评论 0 0
  • 1. 在多模块设计中,主模块中调用内部模块buf1,buf2,buf3,buf4。主模块根据键盘输入的指令(如:...
    魔一方阅读 4,507评论 0 0
  • # 常见汇编代码 # 1. 编写程序:比较AX,BX,CX中带符号数的大小,将最大的数放在AX中 code...
    喝豆腐脑加糖阅读 7,629评论 0 0
  • 一个有符号字数组以0为结束标志,编程求这个数组的最大值、 最小值、平均值。 DATAS SEGMENT BUF D...
    魔一方阅读 3,780评论 0 0
  • 这学期有了汇编课,但个人感觉这部分难度还是有一些的,所以写了这篇简书当做自己对于知识的复习,同时也是希望能够再次加...
    kl_w阅读 11,752评论 0 7