免费智能真题库 > 历年试卷 > 程序员 > 2019年下半年 程序员 上午试卷 综合知识
  第13题      
  知识点:   声音信号   声音信号的数字化   声音   信号
  关键词:   声音   数字化   信号        章/节:   多媒体基础知识       

 
声音信号的数字化过程就是在时间和幅度两个维度上的离散化过程,其中时间的离散化称为(13)。
 
 
  A.  分时
 
  B.  采样
 
  C.  量化
 
  D.  调频
 
 
 

  相关试题:音频          更多>  
 
  第13题    2017年下半年  
   26%
对声音信号采样时,( )参数不会直接影响数字音频数据量的大小。
  第12题    2011年下半年  
   42%
音频信息数字化的过程不包括(12)。
  第14题    2012年上半年  
   27%
声音信号采样时,(14)不会影响数字音频数据量的多少。
   知识点讲解    
   · 声音信号    · 声音信号的数字化    · 声音    · 信号
 
       声音信号
        声音是通过空气传播的一种连续的波,称为声波。声波在时间和幅度上都是连续的模拟信号,通常称为模拟声音(音频)信号。
        1)声音的3个指标
        声音主要有音量、音调和音色3个指标。
        .音量(也称响度):声音的强弱程度取决于声音波形的幅度,即取决于振幅的大小和强弱。
        .音调:人对声音频率的感觉表现为音调的高低,取决于声波的基频。基频越低,给人的感觉越低沉,频率高则声音尖锐。
        .音色:人们能够分辨具有相同音高的不同乐器发出的声音,就是因为它们具有不同的音色。一个声波上的谐波越丰富,音色越好。
        2)声音信号的带宽
        对声音信号的分析表明,声音信号由许多频率不同的信号组成,通常称为复合信号,而把单一频率的信号称为分量信号。声音信号的一个重要参数就是带宽(bandwidth),它用来描述组成声音信号的频率范围。PC处理的音频信号主要是人耳能听到的音频信号(audio),它的频率范围是20~20kHz。可听声包括如下内容。
        .话音(也称语音):人的说话声,频率范围通常为300~3400Hz。
        .音乐:由乐器演奏形成(规范的符号化声音),其带宽可达到20~20kHz。
        .其他声音:如风声、雨声、鸟叫声、汽车鸣笛声等,它们起着效果声或噪声的作用,其带宽范围也是20Hz~20kHz。
        3)幅度和频率
        声音信号的两个基本参数是幅度和频率。幅度是指声波的振幅,通常用动态范围表示,一般用分贝(dB)为单位来计量。频率是指声波每秒钟变化的次数,用Hz表示。
 
       声音信号的数字化
        声音信号的数字化即用二进制数字的编码形式来表示声音。最基本的声音信号数字化方法是采样一量化法,可以分成以下3个步骤。
        1)采样
        采样是把时间连续的模拟信号转换成时间离散、幅度连续的信号。在某些特定时刻获取的声音信号幅值叫作采样,由这些特定时刻采样得到的信号称为离散时间信号。一般是每隔相等的一小段时间采样一次,其时间间隔称为采样周期,它的倒数称为采样频率。为了不产生失真,采样频率不应低于声音信号最高频率的二分之一。因此,语音信号的采样频率一般为8kHz,音乐信号的采样频率则应在40kHz以上。采样频率越高,可恢复的声音信号分量越丰富,其声音的保真度越好。
        2)量化
        量化处理是把在幅度上连续取值(模拟量)的每一个样本转换为离散值(数字量)表示,因此量化过程有时也称为A/D转换(模数转换)。量化后的样本是用二进制数来表示的,二进制数位数的多少反映了度量声音波形幅度的精度,称为量化精度,也称为量化分辨率。例如,每个声音样本若用16位(2B)表示,则声音样本的取值范围是0~65 536;精度是1/65 536;若只用8位(1B)表示,则样本的取值范围是0~255,精度是1/256。量化精度越高,声音的质量越好,需要的存储空间也越多;量化精度越低,声音的质量越差,而需要的存储空间越少。
        3)编码
        为了便于计算机的存储、处理和传输,按照一定的要求对采样和量化处理后的声音信号进行数据压缩和编码,即选择某一种或者几种方法对它进行数据压缩,以减少数据量,再按照某种规定的格式将数据组织成为文件。
 
       声音
               声音信号的数字化
               声音信号是一种模拟信号,计算机要对它进行处理,必须将它转换成为数字声音信号,即用二进制数字的编码形式来表示声音。最基本的声音信号数字化方法是取样-量化法,它有采样、量化和编码三个步骤。
               (1)采样。采样是把时间连续的模拟信号转换成时间离散、幅度连续的信号。在某些特定的时刻获取声音信号值叫做采样,由这些特定时刻采样得到的信号称为离散时间信号。一般都是每隔相等的一小段时间采样一次,其时间间隔称为取样周期,它的倒数称为采样频率。采样频率越高,可恢复的声音信号分量越丰富,其声音的保真度越好。
               (2)量化。量化处理是把在幅度上连续取值(模拟量)的每一个样本转换为离散值(数字量)表示,因此量化过程有时也称为A/D转换(模数转换)。量化后的样本是用二进制数来表示的,二进制数位数的多少反映了度量声音波形幅度的精度,称为量化精度,也称为量化分辨率。
               (3)编码。经过采样和量化处理后的声音信号已经是数字形式了,但为了便于计算机的存储、处理和传输,还必须按照一定的要求进行数据压缩和编码,即选择某一种或者几种方法对它进行数据压缩,以减少数据量,再按照某种规定的格式将数据组织成为文件。
               声音文件的格式
               数字声音在计算机中存储和处理时,其数据必须以文件的形式进行组织,所选用的文件格式必须得到操作系统和应用软件的支持。
               .Wave文件(.WAV)。Microsoft公司的音频文件格式,它来源于对声音模拟波形的采样。用不同的采样频率对声音的模拟波形进行采样可以得到一系列离散的采样点,以不同的量化位数(8位或16位)把这些采样点的值转换成二进制数,然后存入磁盘,这就产生了声音的WAV文件,即波形文件。利用该格式记录的声音文件能够和原声基本一致,质量非常高,但文件数据量大。
               .Module文件(.MOD)。该格式的文件里存放乐谱和乐曲使用的各种音色样本,具有回放效果明确,音色种类无限等优点。
               .MPEG文件(.MP3)。现在最流行的声音文件格式,因其压缩率大,在网络、可视电话、通信方面应用广泛,但与CD唱片相比,音质不能令人非常满意。
               .RealAudio文件(.RA)。该格式文件具有强大的压缩量和极小的失真,它也是为了解决网络传输带宽资源而设计的,因此主要目标是压缩比和容错性,其次才是音质。
               .MIDI文件(.MID/.RMI)。它是目前较成熟的音乐格式,实际上已经成为一种产业标准。MIDI文件是一种描述性的“音乐语言”,包括音符、控制参数等指令,指示MIDI设备要做什么、怎么做。例如将所要演奏的乐曲信息用数据进行描述,即演奏哪个音符、加什么伴奏、多大音量等。由于MIDI文件不包含波形数据,因此MIDI文件非常小巧。RMI格式文件可以包括图片标记和文本。
               .Voice文件(.VOC)。Creative公司波形音频文件格式,也是声霸卡(sound blaster)使用的音频文件格式。每个VOC文件由文件头块(header block)和音频数据块(data block)组成。文件头包含一个标识版本号和一个指向数据块起始的指针。数据块分成各种类型的子块。
               .Sound文件(.SND)。NeXT Computer公司推出的数字声音文件格式,支持压缩。
               .Audio文件(.AU)。Sun Microsystems公司推出的一种经过压缩的数字声音文件格式,是因特网上常用的声音文件格式。
               .AIFF文件(.AIF)。Apple计算机的音频文件格式。Windows的Convert工具可以把AIF格式的文件转换成Microsoft的WAV格式的文件。
               .CMF文件(.CMF)。Creative公司的专用音乐格式,与MIDI差不多,音色、效果上有些特色,专用于FM声卡,但其兼容性很差。
 
       信号
        任务间同步的另一种方式是异步信号。在两个任务之间,可以通过相互发送信号的方式,来协调它们之间的运行步调。
        所谓的信号,指的是系统给任务的一个指示,表明某个异步事件已经发生了。该事件可能来自于外部(如其他的任务、硬件或定时器),也可能来自于内部(如执行指令出错)。异步信号管理允许任务定义一个异步信号服务例程ASR(Asynchronous Signal Routine),与中断服务程序不同的是,ASR是与特定的任务相对应的。当一个任务正在运行的时候,如果它收到了一个信号,将暂停执行当前的指令,转而切换到相应的信号服务例程去运行。不过这种切换不是任务之间的切换,因为信号服务例程通常还是在当前任务的上下文环境中运行的。
        信号机制与中断处理机制非常相似,但又各有不同。它们的相同点是:
        .都具有中断性:在处理中断和异步信号时,都要暂时地中断当前任务的运行;
        .都有相应的服务程序;
        .都可以屏蔽响应:外部硬件中断可以通过相应的寄存器操作来屏蔽,任务也能够选择不对异步信号进行响应。
        信号机制与中断机制的不同点是:
        .中断是由硬件或特定的指令产生,而信号是由系统调用产生;
        .中断触发后,硬件会根据中断向量找到相应的处理程序去执行;而信号则通过发送信号的系统调用来触发,但系统不一定马上对它进行处理;
        .中断处理程序是在系统内核的上下文中运行,是全局的;而信号处理程序是在相关任务的上下文中运行,是任务的一个组成部分。
        实时系统中不同的任务经常需要互斥地访问共享资源。当任务试图访问资源时被正使用该资源的其他任务阻塞,可能出现优先级反转的现象,即当高优先级任务企图访问已被某低优先级任务占有的共享资源时,高优先级任务必须等待直到低优先级任务释放它占有的资源。如果该低优先级任务又被一个或多个中等优先级任务阻塞,问题就更加严重。由于低优先级任务得不到执行就不能访问资源、释放资源。于是低优先级任务就以一个不确定的时间阻塞高优先级的任务,导致系统的实时性没有保障。下图为是一个优先级反转的示例。
        
        一个优先级反转的示例
        如上图所示,系统存在任务1、任务2、任务3(优先级从高到低排列)和资源R。某时,任务1和任务2都被阻塞,任务3运行且占用资源R。一段时间后,任务1和任务2相继就绪,任务1抢占任务3运行,由于申请资源R失败任务1被挂起。由于任务2的优先级高于任务3,任务2运行。由于任务3不能运行和释放资源R,因此任务1一直被阻塞。极端情况下,任务1永远无法运行,处于饿死状态。
        解决优先级反转问题的常用算法有优先级继承和优先级天花板。
               优先级继承协议
               L. Sha、R. Rajkumar和J. P. Lehoczky针对资源访问控制提出了优先级继承协议(Priority Inheritance Protocol,PIP)。
               PIP协议能与任何优先级驱动的抢占式调度算法配合使用,而且不需要有关任务访问资源情况的先验知识。优先级继承协议的执行方式是:当低优先级任务正在使用资源,高优先级任务抢占执行后也要访问该资源时,低优先级任务将提升自身的优先级到高优先级任务的级别,保证低优先级任务继续使用当前资源,以尽快完成访问,尽快释放占用的资源。这样就使高优先级任务得以执行,从而减少高优先级任务被多个低优先级任务阻塞的时间。低优先级任务在运行中,继承了高优先级任务的优先级,所以该协议被称作优先级继承协议。
               由于只有高优先级任务访问正被低优先级任务使用的资源时,优先级继承才会发生,在此之前,高优先级任务能够抢占低优先级任务并执行,所以优先级继承协议不能防止死锁,而且阻塞是可以传递的,会形成链式阻塞。另外,优先级继承协议不能将任务所经历的阻塞时间减少到尽可能小的某个范围内。最坏情况下,一个需要μ个资源,并且与v个低优先级任务冲突的任务可能被阻塞min(μ,v)次。
               优先级冲顶协议
               J. B. Goodenough和L. Sha针对资源访问控制提出了优先级冲顶协议(Priority Ceiling Protocol,PCP)。
               PCP协议扩展了PIP协议,能防止死锁和减少高优先级任务经历的阻塞时间。该协议假设所有任务分配的优先级都是固定的,每个任务需要的资源在执行前就已确定。每个资源都具有优先级冲顶值,等于所有访问该资源的任务中具有的最高优先级。任一时刻,当前系统冲顶值(current priority ceiling)等于所有正被使用资源具有的最高冲顶值。如果当前没有资源被访问,则当前系统冲顶值等于一个不存在的最小优先级。当任务试图访问一个资源时,只有其优先级高于当前系统冲顶值,或其未释放资源的冲顶值等于当前系统冲顶值才能获得资源,否则会被阻塞。而造成阻塞的低优先级任务将继承该高优先级任务的优先级。
               已经证明,PCP协议的执行规则能防止死锁,但其代价是高优先级任务可能会经历优先级冲顶阻塞(Priority ceiling blocking)。即高优先级任务可能被一个正使用某资源的低优先级任务阻塞,而该资源并不是高优先级任务请求的。这种阻塞又被称作回避阻塞(avoidance blocking),意思是因为回避死锁而引起的阻塞。即使如此,在PCP协议下,每个高优先级任务至多被低优先级任务阻塞一次。使用PCP协议后,能静态分析和确定任务之间的资源竞争,计算出任务可能经历的最大阻塞时间,从而能分析任务集合的可调度性。在PCP协议下,高优先级任务被阻塞时会放弃处理器,因此,访问共享资源的任务可能会产生4次现场切换。
   题号导航      2019年下半年 程序员 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第13题    在手机中做本题