第九届西安邮电大学汇编语言程序设计竞赛题目



 
 

一、题目名称:
    双任务系统设计
二、题目要求:
    1、双窗口要求:
    将显示器的屏幕划分成大小相等的左右两个显示窗口,并画出每个显示窗口的边框,窗口大小适中。
    在左边显示窗口,能够运行简单的贪吃蛇游戏,即采用键盘按键控制贪吃蛇前进方向,如“W、S、A、D”键分别为上下左右方向控制按键,以贪吃蛇碰触窗口边框为游戏终止条件,以“R”键为游戏重新开始。若游戏进行当中无键按下,则贪吃蛇保持当前方向不变直至撞墙。
    在右边显示窗口,能够画出等边三角形,要求:三角形位置在该显示区域的中部,参数边长由键盘输入确定。每次根据输入的参数,在该窗口将三角形重新绘制出来。
    初始工作窗口为左边显示窗口,以后每按一次Tab键切换至旁边显示窗口。当某个显示窗口被选中时,则光标在该窗口底部闪烁,键盘输入对当前窗口有效。整个系统按ESC键退出,返回DOS操作系统界面。
    2、设计提示:
    使用8086CPU汇编语言,编写任务调度管理程序,对两个任务(两个窗口)进行管理和调度,能够实现任务之间的切换,保存上下文信息。任务调度程序可以使用硬件定时中断,通过中断服务程序完成,或者可以使用循环程序来完成。
    若左窗口贪吃蛇游戏正在进行时,切换到右窗口,则贪吃蛇游戏可以暂停,也可以继续运行(只是按键不起作用),这个由程序设计者自行决定。
    任务可以有多种形式,不局限于以上两种,运行任务时应该能够通过屏幕显示运行状态或结果,并通过键盘进行交互。
三、格式要求:
    1、汇编语言程序设计报告:
    包括:整体设计结构框图,各子模块设计框图;各个任务模块的完成情况;任务调度程序的完成情况;整个系统联调的完成情况;必要的运行结果的屏幕截图。
    2、汇编语言源程序:
    要求:格式规整;每个功能模块和主要代码处需有注释。
四、注意事项:
    本次汇编语言程序设计竞赛可使用的软件工具为:Masm.exe, Link.exe,Debug.exe, Debug.com ,Edit.com,记事本
    Windows 64位系统运行需要使用DOSbox

汇编语言程序设计竞赛组委会
2018年11月5日