⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 prime.asm

📁 80X86的一些例子程序
💻 ASM
字号:
;******************************************************
;* 文件名:Prime.asm
;* 创建日期:2001.7.2
;* 作者:陈文尧
;* 功能:打印素数
;******************************************************
include system.inc

;******************************************************
;* 以下代码由汇编专家产生,不要随便修改
;******************************************************
.CODE
	ifdef __COM__
		org	100h
	endif
@@Start:
;------------------------------------------------------
; 初始化数据段
;------------------------------------------------------
	InitDS	cs
;------------------------------------------------------
; 调用主函数
;------------------------------------------------------
	call	main
;------------------------------------------------------
; 正常返回DOS
;------------------------------------------------------
	ReturnDos

;++++++++++++++++++++++++++++++++++++++++++++++++++++++
;+ 主函数,加入实现程序功能的代码
;++++++++++++++++++++++++++++++++++++++++++++++++++++++
main	proc
	DisplayMessage	msg1
@GetNumber:
	LibCall		GetLong ;结果在dx:ax或eax
	or			eax,eax
	jg			short @Continue
	DisplayMessage	msg2
	jmp			@GetNumber
@Continue:
      mov			edi,eax
      LibCall		PutLong,dx,ax
	DisplayMessage	msg3
	sub			esi,esi
@Outer:
	inc			esi
	sub			ebx,ebx
	sub			ecx,ecx
@Inner:
	inc			ebx
	mov			eax,esi
	sub			edx,edx
	div			ebx
	or			edx,edx
	jnz			short @Skip
	inc			ecx
@Skip:
      cmp			ebx,esi
      jb			@Inner
      cmp			ecx,00000002h
      jnz			short @Skip2
      mov			eax,esi
      shr			eax,10h
      LibCall		PutLong,ax,si
      LibCall		PutChar,' '
@Skip2:
	cmp			esi,edi
	jb			@Outer
	;
	ret
main	endp

msg1	db	'求n(n为正整数)以内的素数,请输入n值:$'
msg2	db	'输入的n值不合格,请重新输入:$'
msg3	db	'以内的素数有:',0dh,0ah,'$'
;******************************************************
;* 标志程序结束并指定程序入口
;******************************************************
	end	@@Start

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -