汇编程序设计 色子模拟程序设计

来源:百度知道 编辑:UC知道 时间:2024/06/20 02:16:55
任务:利用计算机自带芯片实现掷色子的功能模拟。
基本要求:
1) 设计一个基本色子模拟程序,能通过按键来控制色子的投掷(例如:按R键掷出色子,S键复位);
2) 该模拟程序中须含有一个随机数产生程序,该程序用来决定最终色子的点数;
3) 必须有一显示程序用于显示最终色子点数(采用何种显示方式不限,最好能模拟实物的点数显示)

data segment
massage db 'Start Now:$'
Result db 'The Number is:$'
input db ?
data ends
;********************************************
code segment
assume cs:code,ds:data
start:mov ax,data
mov ds,ax
mov cx,0
res:mov dx,offset massage;输出开始句子
mov ah,09h
int 21h
mov di,offset input;获取按键
l1: mov ah,01h
int 21h
cmp al,52h;R,r都算
jz check;判断是否开始
cmp al,72h
jz check
cmp al,73h;S,s都算
jz l2;判断是否重新置位
cmp al,53h
jz l2
cmp al,65h;E,e作为结束按键
jz Ed
cmp al,45h
jz Ed
jmp l1;不是R,r;S,s;E,e则继续获取

按键
l2:mov dl,0dh;换行
mov ah,02h
int 21h
mov dl,0ah
mov ah,02h
int 21h
jmp res
;********************************************
check:mov ah,2ch
int 21h;取系统时间
mov ah,0;因为有除法溢出,所以置零了
mov al,dl;sec
mov bl,6
div bl;将获取的时间除以6,取余数

(ah)
cmp ah,0
jnz l3
mov