gusucode.com > matlab通信工程仿真源码(张德丰等编著)程序书籍 > matlab_code/matlab通信工程仿真源码(张德丰等编著)/第9章/zhe13.m
function y= zhe13(x) % 本函数实现国际通用的PCM量化A律13折线特性近似 % x为输入的序列,变换后的值赋给序列y x=x/max(x); %求出序列的最大值,并同时归一化 z=sign(x); %求的每一序列的值的符号 x=abs(x); %取序列的绝对值 for i=1:length(x), %直接将序列的绝对值量化 if ((x(i)>=0)&(x(i)<1/64)), %序列值位于第1和第2折线 y(i)=16*x(i); else if(x(i)>=1/64 & x(i)<1/32), %序列值位于第3折线 y(i)=8*x(i)+1/8; else if(x(i)>=1/32 & x(i)<1/16), %若序列值位于第4折线 y(i)=4*x(i)+2/8; else if(x(i)>=1/16 & x(i)<1/8), %若序列位于第5折线 y(i)=2*x(i)+3/8; else if(x(i)>=1/8 & x(i)<1/4), %若序列位于第6折线 y(i)=x(i)+4/8; else if (x(i)>=1/4 & x(i)<=1/2), %若序列值位于第7折线 y(i)=1/2*x(i)+5/8; else if(x(i)>=1/2 & x(i)<=1), %若序列值位于第8折线 y(i)=1/4*x(i)+6/8; end end end end end end end end y=z.*y; %重新将符号代回序列中 %循环结束