五度相生律和十二平均律的关系

从小便听说五度相生律,但是不明白为什么五度相生,得出的是7个音阶?

后来听同学介绍巴赫,说他有一项贡献,是搞出了十二平均律。又迷糊了,以前学都是7个音阶,怎么又冒出来12个音阶了?

也看过一些乐理解释,但似懂非懂。

今天下功夫,终于有点明白了,趁热总结巩固下。

倍频

音高本质是声音的频率。根据物体振动的频率与其长度成反比的物理定律,我们做一根弦,假设其频率为f。 将其长度缩短为一半,得到的声音频率就是2f,是f的倍频。2f听起来与f一模一样,只是正好高一截。这两个音同时演奏时,很和谐。音乐家很满意。但是仅仅跟f一样的音,对于作曲是远远不够的。

于是音乐家,需要在在[f , 2f ]之间的频率中,找到一些可以作为音阶的频率。于是引出五度相生。

五度相生

五度相生这个名字描述的不太清楚。实际是根据3:2这个比例,也就是把弦三等分,然后取其中长度为2的一段,它发出的声音,就是f的3/2倍,这样得到了3/2f。这个音跟f同时演奏也很和谐,所以留下来当音阶。(sol)

接下来对3/2f,做同样操作,得到了 9/4f。注意这里要绕个弯子。因为9/4f 大于 2f 了,而我们要找的是f到2f的音,所以再根据倍频的性质,将其除以2,得到了9/8f,这个音留下来当音阶 (re)

接下来继续做相同的操作 ,得到 27/16 (la), 81 / 64 (mi) ,243/128(si), 至此算上do我们有6个音了。

继续找下去,我们能找到更多的音,但是我们也能看到,这个分数越来越大。实际中音乐家是通过改变弦长来改变音阶,分数越大,那么弦长就越难确定,所以往后面的操作性不大了。

不过我们还有一手反向操作,我们可以把f对应的弦,加长一半,这样得到2/3f,这个音小于f,再通过倍频的性质,乘2,得到4/3f,这样就把这个音做进了[f,2f]区间,于是也把它凑成音阶 (fa)。

这样在[f,2f)区间内,我们规定了7个音作为音阶。而在其它区间,我们直接使用这7个音的倍频,比如2f就是f的倍频,这样听起来就很和谐。

因为3/2f排在第五个,于是3:2这个关系被称为五度音,于是这种定音方法,就被称作五度相生了。

同理,按照这个说法,2f相当于是f算起的第8个音,叫做八度音,于是f到2f这个区间,就被称作一个八度。

五度相生的问题

五度相生律是通过3:2关系严格推导出来的,所以这7个音之间是很好听的,没毛病。但是随着音乐的发展,出现了转调的需求,这时五度相生的问题就出来了。

转调的意思,就是乐曲中的根音,也就是我们之前f的音高要变。计算上很简单,把f一换,就能算出新的频率。

但是乐器不能这样做啊。尤其是钢琴这种定音乐器。每个按键,做成什么音,它就只能发出这个音。

于是产生了一种新的需求,就让转调后的根音,还是落在某个现存的音阶里,这样每个音符的按键随之更换,但两两之间的音程差还是符合原来的比例。很遗憾,五度相生法得出的音阶,不支持这么搞。

早在古希腊时期,毕达哥拉斯就研究过这个问题。它是直接用五度相生法,得到了12个比值,分别为F、2187/2046F、9/8F、19683/16384F、81/64F、4/3F、729/512F、3/2F、6561/4096F、27/16F、59049/32768F、243/128F。

再往后取,发现13音是1.35f,14音是1.0136f。他俩与其说是新的音,不如说是走调的fa和do。所以音乐家为了方便起见,就决定一个八度由十二音构成。其它区间直接取这十二个音的倍频。

但是我们知道,1跟1.0136虽然接近,但还是不一样的。所以跨八度的音就并不和谐了。(有的音跟1和谐,有的音跟1.0136和谐)。另一方面,十二个音彼此之间的音程并不一致,有的大,有的小。移调后的音之间的关系就错位了。

为了缓解这个问题,音乐家决定重新划分12个音。十二平均律就是其中一种方法,它后来成为了事实标准。

十二平均律

跟五度相生相比,十二平均律其实异常简单,就是f到2f之间,根据2的12次方,拆成12个音。这样每两个音之间的比例关系完全相同,方便转调。而又刚好sol这个音在十二平均律下是1.498f,非常接近1.5f。这样也兼顾了听感。

钢琴就是按照十二平均律做的,他有7组八度,每个八度有7个白键和5个黑键,对应12个音。7个白键对应的正是五度相生法找出的那7个常用音阶。

说到这里,顺便回答一个问题,人们口中的半音,就是十二平均律下,两个相邻的音之间的音程差。为什么叫半音,也是历史原因。因为五度相生法下,就7个音。不转调的话无所谓,但是转调的话,就需要知道两个音之间的具体距离。然后就发现mi到fa到距离短,si到do的距离也短,于是发明了半音这个说法。

现在按照十二平均律的规则,mi到fa之间,就是一个半音,do到re则是两个半音。所以do到re中间,其实还应该有个音,叫做C#或者Db。(do、re、mi、fa、sol、la、si 对应的字母叫做 C、D、E、F、G、A、B , #是提高半音, b是降半音)


评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注