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

📄 random.asm

📁 学分管理系统的分析
💻 ASM
字号:

public random

data   segment      para  public  'data'
mod_num        db  ?
num1     db  17
num2     db  128
num_x    db  ?
status   db  1
data   ends

code   segment  public  'code'
       assume  cs:code,ds:data
.386
;======================================================

;入口参数: CL-- 模的大小
;出口参数:BX--为CL范围内的一个随机数
random       proc  far
	     push   ax
	     push   cx
	     push   dx
	     push   di
             push   ds
             mov    di,  data
             mov    ds,  di
             
             cmp    byte ptr[status],1
             je     next
             
             mov    al,byte ptr[num1]
             mul    byte ptr[num_x]
             add    ax,37
             div    byte ptr[num2]
             mov    byte ptr[num_x],ah
             jmp    next1
             
next:        push   cx
	     mov    ah,0
             int    1ah
             mov    [num_x],dl
             mov    status,0
             pop    cx

next1:       mov    ax,0
             mov    al,[num_x]
             div    cl     
             mov    bh,0
             mov    bl,ah
             
             pop    ds
	     pop    di
	     pop    dx
	     pop    cx
	     pop    ax
             ret
random       endp

;=======================================================

code   ends
       end   

⌨️ 快捷键说明

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