题目
用8086汇编语言编写点歌系统:
输入不同的数字,播放相应的音乐。其中“1”代表《刚好遇见你》音乐,“2”代表《成都》音乐,“3”代表《暧昧》音乐。输入数字“0”,则退出点歌系统。
Github链接
https://github.com/liuyue-feilengxue/assembly_song_system.git
希望看的开心可以去点个星啊
本站下载链接
https://download.csdn.net/download/weixin_44004835/12536672
注意事项
首先是这个题目不同,可能会有不一样的谱子,不一样的音调等,需要你们自己去调整。
编曲
首先,题目要求我们要有三首歌,分别是《刚好遇见你》,《成都》,《暧昧》。(由于我搜到暧昧有很多首,我自己之前也没听过,这里就用薛之谦的暧昧)
我们先在网上找到这几首歌的谱子,然后随便写几个重要的小节,比如副歌就好了。全首歌写完怕是要写好几天。
这里提醒一下,本文可能需要你有一些非常基础的乐理知识,以及看过这篇文章。
刚好遇见你
我们这里就选择“因为刚好遇见你,留下足迹才美丽(第三行第一个小节)”一直到“我想我会记得你(第五行第一小节)”,作为这首歌曲子。
首先我们注意到,这首歌是4/4拍,而且半拍的音比较多,为了方便以及听起来更顺畅,我们将一拍的mus_time设置为50。同时,由于这首歌音比较高,我们把音调低八度,对我们编曲就更加有利。(主要是没有高两个8度的do音)
下面是代码
mus_freq1 dw 262,262,262
dw 262,220,524,440,440,440,392
dw 392,330,330,262,294,262,262
dw 262,220,524,587,524,524,440
dw 440,392,330,392,294,262,247
dw 262,220,524,440,440,440,392
dw 392,392,330,392,294,262,294
dw 262,247,262,262,262,294
dw 330,294,262,262,247,262,262
dw -1
mus_time1 dw 25,25,25
dw 25,25,25,25,50,25,25
dw 25,25,25,25,50,25,25
dw 25,25,25,25,50,25,25
dw 25,25,25,25,50,25,25
dw 25,25,25,25,50,25,25
dw 25,25,25,25,50,25,25
dw 25,12,12,100,25,25
dw 25,12,12,25,12,12,100
成都
因为这首歌我一开始找的时候没找到副歌部分,所以就选了一开头“让我掉下眼泪的不止昨夜的酒”一直到“是挣扎的自由(第七行一开头)”。
这首歌我们看到是3/4拍,但是由于曲速仍然比较慢,本来我打算mus_time一拍是33的,但是后面我还是调整为一拍25。
这首歌没有像刚好遇见你改了调。(虽然这首歌是E调,但是也没多管了)
下面是代码
mus_freq2 dw 196,262
dw 262,294,330
dw 392,330,330
dw 330,196
dw 262
dw 294,262,220
dw 196,196
dw 262,262,294,330
dw 440,330,392
dw 330,294
dw 262
dw 294,392
dw 330,294
dw 330,392
dw 392,330,392
dw 440,524,440
dw 330,294,262
dw 294,330,330
dw 196,392
dw 330,330
dw 294,262,262
dw 196,294,262
dw 330,294,262
dw 262
dw -1
mus_time2 dw 25,75
dw 50,12,12
dw 25,25,25
dw 25,50
dw 75
dw 25,25,25
dw 125,25
dw 75,50,12,12
dw 25,25,50
dw 25,25
dw 75
dw 50,25
dw 25,100
dw 25,75
dw 25,25,25
dw 25,25,75
dw 25,50,25
dw 50,25,125
dw 25,100
dw 25,25
dw 25,25,75
dw 25,50,25
dw 50,12,12
dw 200
暧昧
这首歌也是4/4拍,所以我也是一拍50的速度。这首歌选的是开头“反正现在的感情都很暧昧”,一直到倒数第二行“还不如听首情歌的机会忘了谁”
这首歌中间有一些四分之一拍的,我也把他当半拍处理了。还有一拍半的地方,希望读者能注意一下。
下面是代码
mus_freq3 dw 262,262,262,294,262
dw 392,440,330,330,294
dw 247,247,247,262,247
dw 330,392,247,294,262
dw 220,247,220,247,220
dw 330,349,262,220,247
dw 196,262,294,294
dw 349,330,330,294,262,294
dw 330,262,262,262,294,262
dw 392,440,330,330,294
dw 294,247,247,247,262,247
dw 330,392,247,294,262
dw 220,247,220,247,220
dw 330,349,220,262,247
dw 247,330,392,294,262
dw -1
mus_time3 dw 25,25,25,25,25
dw 25,100,25,25,100
dw 25,25,25,25,25
dw 25,100,25,25,100
dw 25,25,25,25,25
dw 25,100,25,25,75
dw 25,50,50,25
dw 50,25,25,25,50,25
dw 75,25,25,25,25,25
dw 25,100,25,25,25
dw 75,25,25,25,25,25
dw 25,100,25,25,100
dw 25,25,25,25,25
dw 25,100,25,25,25
dw 100,50,25,50,75
完整代码可以去GItHub上下载或者本站付费连接下载
资料参考
1.本站文章:汇编语言:写一个简单的音乐程序
2.IBM-PC汇编语言程序设计(第2版)清华大学出版社第389页,393页
看的开心可以去我的GItHub中点个星啊。