汇编梦幻钢琴程序设计报告.docVIP

  • 2
  • 0
  • 约2.83万字
  • 约 27页
  • 2019-11-06 发布于湖北
  • 举报
《汇编语言程序设计》 综合程序设计实验报告 题 目: 梦幻钢琴 项目简介 利用汇编语言设计一个模拟钢琴演奏程序。在显示器上显示出钢琴的键盘,以计算机键盘的相应键模拟钢琴键盘进行乐曲的演奏。在PC机键盘上按键,屏幕上对应的钢琴键出现跳动,并发出相应音符的声音,例如:? 按字母 “A”,?发C大调?do ? 按字母 “S”,?发C大调?re ? 按字母 “D”,?发C大调?me 按字母 “F”,?发C大调 fa …… 按下f1、f2、f3、f4、f5会依次播放程序中所添加的歌曲;如果想要使该歌曲加速播放,可以同时按住“shift”键和“+”键;若要减速播放,则按“shift”键和“-”键。在弹奏钢琴曲时,直接按动“A”、“S”、“D”、“F”、“G”、“H”、“J”键表示的是中音区,高音区用右shift键加以上键弹奏,低音区用左shift键加以上键弹奏,也可以通过C、D转换是弹奏变为C大调或D 大调。 二、小组成员具体分工 1、界面设计-刘静 (1)、屏幕设置 MOV AH,00H MOV AL,0DH INT 10H MOV AH,0BH ;11号功能,设置背景颜色 MOV BL,00H INT 10H (2)、钢琴绘制,绘制键盘时的坐标的确定: 白色琴键坐标: ST_LX DW 50,61,72,83,94,105,116 ;起点横坐标 ST_MX DW 127,138,149,160,171,182,193 ST_HX DW 204,215,226,237,248,259,270 ST_Y DW 50 ;起点纵坐标 ED_LX DW 60,71,82,93,104,115,126 ;终点纵坐标 ED_MX DW 137,148,159,170,181,192,203 ED_HX DW 214,225,236,247,258,269,280 ED_Y DW 90 ;终点纵坐标 黑色琴键坐标 BT_X DW 57,68,90,101,112 ;起点横坐标 DW 134,145,167,178,189 DW 211,222,244,254,265 BT_Y DW 50 ;起点纵坐标 BD_X DW 64,75,97,108,119 ;终点横坐标 DW 141,152,174,185,196 DW 218,229,251,262,273 BD_Y DW 70 ;终点纵坐标 宏定义绘制填充矩形: DRAW MACRO START_X,START_Y,END_X,END_Y,COLOR 宏定义绘制不填充矩形: DRAWSQRE MACRO START_X,START_Y,END_X,END_Y,COLOR 最后在主程序INIT PROC NEAR调用以上定义的宏来绘制琴键。 (3)、琴键绘制PIANO_DRAW PROC NEAR (4)、屏幕显示字符SHOW_CHAR PROC NEAR、SHOW_TEXT PROC NEAR 2、功能调试-刘铸辉 通过调用子程序来实现各个功能: (1)、手动演奏GEN_HAND PROC NEAR (2)、自动播放发声程序GEN_AUTO PROC NEAR (3)、延时程序WAITF PROC NEAR (4)、自动播放歌曲SCAN_SONG PROC NEAR、PLAY_SONG PROC NEAR (5)、C/D调及对应的低、中、高频率分别载入LOAD_AUDIO PROC NEAR (6)、C/D调判断及其状态在屏幕上的显示SCAN_TUNE PROC NEAR; 三、需求分析与设计 1、钢琴绘制。这部分主要实现画钢琴键盘键身的功能。它是由二十一个白色的长方块和十五个黑色的长方块构成的,要在屏幕上画出有立体效果的长方形白色和黑色键盘,我们需要用BIOS调用编织线使程序。显示适配器都自带显示服务的BIOS,利用它所提供的BIOS调用来编写程序,对于我们编程应用者来说是透明的,我们只需要调用显示驱动程序INT??10H。钢琴主要是由矩形、直线等规则几何形状构成,通过画点、画线等基本程序完成钢琴的绘制。 对于绘制钢琴键盘,为使其有立体感,还需要先在excel表中绘制一

文档评论(0)

1亿VIP精品文档

相关文档