基于VGA显示器的乒乓球游戏设计及原理

项目名称:闰年的计算

1。实验目的:

(1)学习分支、中断和逻辑表达式。

(2)熟悉汇编语言程序设计、编译和链接过程。

实验内容:

用DOS 21H调用键盘中断类型10函数,键盘的年份值的字符串?接收到的字节存储在缓冲器中。字符串中的每个字符都转换成相应的十进制值(0到9的10数字的ASC码值大于其自身的30H关系),用一年的表达式来判断是否是闰年。

3。编程技巧:

(1)想办法确定是不是闰年。判断闰年的规则:如果一年能被4整除,但不能被100整除,或者不能被400整除,则为闰年。

(2)用于确定特定年份为闰年的汇编语言表达式如下:

(((AX)MOD 4 EQ 0)和(MOD 100(AX)EQ 0))或((AX)MOD 400 EQ 0)

(AX)从键盘输入存储的年份值。

(3)如图所示:

应该

编译:

由数据段定义的数据段

InfoN DB 0DH,0AH of,请输入年份:$ '

DB 0DH,0AH,“今年是闰年!$'

N dB带宽0DH,0AH,“这是闰年!$'

瓦特DW 0

BUF DB 8

分贝?

DB 8 DUP(?)

艾德(男子名)

堆栈段的堆栈

DB 200 DUP(0)

堆栈结尾

代码段

假设DS:数据,SS:堆栈,CS:代码。

开始:MOV斧,数据

MOV DS,AX

InfoN LEA DX,屏幕上的信息显示。

MOV AH,9 INT 21H

LEA DX,来自键盘的输入缓冲;今年的弦乐

MOV啊

Int21H10Day BR />MOV CL,[BUF +1]

LEA DI,BUF +2

打电话给datacate

呼叫ifyears

JC A1

LEA DX,阳性

MOV啊,9

21H的解释

JMP出口

A1:LEA DX,?

MOV啊,9

INT 21H

出口:MOV AH,4CH

INT 21H

数据化过程附近;

推CX;

十二月CX

LEA SI,BUF +2

TT1:公司SI

循环TT1

;蕾斯·CX[2]

弹出CX

MOV DH,30H

MOV AX,MOV BL,1

L1:推斧

亚字节PTR [SI,卫生署

多字节指针[SI]

威尔·瓦克斯

爆破筒

MUL BL

12月SI

回路L1

浸水使柔软

ENDP数据中心

近10年

推BX

推CX

推送DX

瓦特·MOV·阿克斯

MOV·CX,AX & lt/触发MOV DX,0

MOV·BX,4岁

BX分部

CMP DX,0

JNZ LAB1

CX MOV艾克斯

MOV BX,100 BR />BX分部

CMP DX,0

JNZ实验室2

CX MOV艾克斯

MOV·BX,400

BX分部

CMP DX,0 BR />JZ实验室2

LAB1:中国图书馆分类号

JMP实验3

实验2:STC

实验三:弹出DX

弹出CX

弹出BX

浸水使柔软

ifyers ENDP

密码

从年底开始

或者多用途实时时钟设计。

(1),其设计目标是真正的结束时钟。

显示部和计时部的时钟定时器的时钟信号生成;

(2)中断的确切时间,其次,

(3)键盘控制功能选择:/>行和列扫描以确定键盘输入

自检键盘LED显示;

不同的按键输入对应不同的功能(比如LED轮回或者LED闪烁)。

2、设计要求

(1)键盘和8255的片选控制部分集成;

(2)LED数码管显示,其外围电路的时间部分;

(3份)构成8253和8259产生的时钟信号,由定时中断和动态刷新显示完成。