为什么16bit可以表示96分贝的动态范围?

书上说CD每个采样点大小为16比特,这样就能够表示96分贝的动态范围.这一范围的下限是刚好能听到的声音的阈值,上限是人们承受最大负荷声音的极限阈值.
96是怎么算出来的?

阅读 14.2k
4 个回答

20*log(2^16) = 96

百度百科……我能呵呵吗?

这里的96dB指的是信噪比(SNR),信噪比的公式很简单:
SNR=Ps/Pa,P是功率。
如果换成幅度(比如声音的振幅),那么公式则是平方之比:
SNR=(As/Aa)^2
dB记单位的SNR(dB)与SNR的关系是:
SNR(dB)=10*log10(SNR)
所以以声音振幅表示的信噪比分贝是:
SNR(dB)=10*log10((As/Aa)^2)=10*2*log10(As/Aa)=20*log10(As/Aa)

A/D转换时,假设源信号在整个范围内均匀分布,那么平均量化误差为+/-半个bit,也就是1个bit的误差范围。
量化范围取决于bit数,对于Q位的A/D转换,范围是2^Q,也就是说,As/Aa=(2^Q)/1,带入上面的公式则有:
SNR(dB)=20*log10(2^Q)=20*log10(2)*Q≈6.02*Q
对于16bit的CD,SNR(dB)≈6.02*16≈96dB,这个数字就是这么来的。

不过这个数字代表的是信噪比,和动态范围那个90dB之间的关系类似于雷锋与雷峰塔……

请问2楼答主Windoze,信噪比是用来描述 回放设备 的,那16bit 44.1khz难道是说你买的这张光盘 自带噪声,信噪比为96分贝?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进