亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? mathhalf.c

?? GSM半數(shù)率源代碼(VSELP) GSM半數(shù)率源代碼(VSELP)
?? C
?? 第 1 頁(yè) / 共 4 頁(yè)
字號(hào):
      {
        L_var1 = L_var1 << 1;
      }

    }
    else
    {
      /* negative input */
      for (swShiftCnt = 0;
           !(L_var1 >= LW_MIN && L_var1 < (Longword) 0xc0000000L);
           swShiftCnt++)
      {
        L_var1 = L_var1 << 1;
      }
    }
  }
  else
  {
    swShiftCnt = 0;
  }
  return (swShiftCnt);
}

/***************************************************************************
 *
 *   FUNCTION NAME: norm_s
 *
 *   PURPOSE:
 *
 *     Get normalize shift count:
 *
 *     A 16 bit number is input (possiblly unnormalized).  Output
 *     the positive (or zero) shift count required to normalize the
 *     input.
 *
 *   INPUTS:
 *
 *     var1
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range 0xffff 8000 <= var1 <= 0x0000 7fff.
 *
 *   OUTPUTS:
 *
 *     none
 *
 *   RETURN VALUE:
 *     swOut
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range
 *                     0 <= swOut <= 15
 *
 *
 *
 *   IMPLEMENTATION:
 *
 *     Get normalize shift count:
 *
 *     A 16 bit number is input (possiblly unnormalized).  Output
 *     the positive (or zero) shift count required to normalize the
 *     input.
 *
 *     If zero in input, return 0 as the shift count.
 *
 *     For non-zero numbers, count the number of left shift
 *     required to get the number to fall into the range:
 *
 *     0x4000 >= normlzd number >= 0x7fff (positive number)
 *     or
 *     0x8000 <= normlzd number <  0xc000 (negative number)
 *
 *     Return the number of shifts.
 *
 *     This instruction corresponds exactly to the Full-Rate "norm"
 *     instruction.
 *
 *   KEYWORDS: norm, normalization
 *
 *************************************************************************/

Shortword norm_s(Shortword var1)
{

  short  swShiftCnt;
  Longword L_var1;

  L_var1 = L_deposit_h(var1);
  swShiftCnt = norm_l(L_var1);
  return (swShiftCnt);
}

/***************************************************************************
 *
 *   FUNCTION NAME: round
 *
 *   PURPOSE:
 *
 *     Round the 32 bit Longword into a 16 bit shortword with saturation.
 *
 *   INPUTS:
 *
 *     L_var1
 *                     32 bit long signed integer (Longword) whose value
 *                     falls in the range
 *                     0x8000 0000 <= L_var1 <= 0x7fff ffff.
 *   OUTPUTS:
 *
 *     none
 *
 *   RETURN VALUE:
 *
 *     swOut
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range
 *                     0xffff 8000 <= swOut <= 0x0000 7fff.
 *
 *   IMPLEMENTATION:
 *
 *     Perform a two's complement round on the input Longword with
 *     saturation.
 *
 *     This is equivalent to adding 0x0000 8000 to the input.  The
 *     result may overflow due to the add.  If so, the result is
 *     saturated.  The 32 bit rounded number is then shifted down
 *     16 bits and returned as a Shortword.
 *
 *
 *   KEYWORDS: round
 *
 *************************************************************************/

Shortword round(Longword L_var1)
{
  Longword L_Prod;

  L_Prod = L_add(L_var1, 0x00008000L); /* round MSP */
  return (extract_h(L_Prod));
}

/***************************************************************************
 *
 *   FUNCTION NAME: shift_r
 *
 *   PURPOSE:
 *
 *     Shift and round.  Perform a shift right. After shifting, use
 *     the last bit shifted out of the LSB to round the result up
 *     or down.
 *
 *   INPUTS:
 *
 *     var1
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range 0xffff 8000 <= var1 <= 0x0000 7fff.
 *     var2
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range 0xffff 8000 <= var2 <= 0x0000 7fff.
 *
 *   OUTPUTS:
 *
 *     none
 *
 *   RETURN VALUE:
 *
 *     swOut
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range
 *                     0xffff 8000 <= swOut <= 0x0000 7fff.
 *
 *
 *   IMPLEMENTATION:
 *
 *     Shift and round.  Perform a shift right. After shifting, use
 *     the last bit shifted out of the LSB to round the result up
 *     or down.
 *
 *     If var2 is positive perform a arithmetic left shift
 *     with saturation (see shl() above).
 *
 *     If var2 is zero simply return var1.
 *
 *     If var2 is negative perform a arithmetic right shift (shr)
 *     of var1 by (-var2)+1.  Add the LS bit of the result to var1
 *     shifted right (shr) by -var2.
 *
 *     Note that there is no constraint on var2, so if var2 is
 *     -0xffff 8000 then -var2 is 0x0000 8000, not 0x0000 7fff.
 *     This is the reason the shl function is used.
 *
 *
 *   KEYWORDS:
 *
 *************************************************************************/

Shortword shift_r(Shortword var1, Shortword var2)
{
  Shortword swOut,
         swRnd;

  if (var2 >= 0)
    swOut = shl(var1, var2);
  else
  {

    /* right shift */

    if (var2 < -15)
    {

      swOut = 0;

    }
    else
    {

      swRnd = shl(var1, var2 + 1) & 0x1;
      swOut = add(shl(var1, var2), swRnd);

    }
  }
  return (swOut);
}

/***************************************************************************
 *
 *   FUNCTION NAME: shl
 *
 *   PURPOSE:
 *
 *     Arithmetically shift the input left by var2.
 *
 *
 *   INPUTS:
 *
 *     var1
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range 0xffff 8000 <= var1 <= 0x0000 7fff.
 *     var2
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range 0xffff 8000 <= var2 <= 0x0000 7fff.
 *
 *   OUTPUTS:
 *
 *     none
 *
 *   RETURN VALUE:
 *
 *     swOut
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range
 *                     0xffff 8000 <= swOut <= 0x0000 7fff.
 *
 *   IMPLEMENTATION:
 *
 *     If Arithmetically shift the input left by var2.  If var2 is
 *     negative then an arithmetic shift right (shr) of var1 by
 *     -var2 is performed.  See description of shr for details.
 *     When an arithmetic shift left is performed the var2 LS bits
 *     are zero filled.
 *
 *     The only exception is if the left shift causes an overflow
 *     or underflow.  In this case the LS bits are not modified.
 *     The number returned is 0x8000 in the case of an underflow or
 *     0x7fff in the case of an overflow.
 *
 *     The shl is equivalent to the Full-Rate GSM "<< n" operation.
 *     Note that ANSI-C does not guarantee operation of the C ">>"
 *     or "<<" operator for negative numbers - it is not specified
 *     whether this shift is an arithmetic or logical shift.
 *
 *   KEYWORDS: asl, arithmetic shift left, shift
 *
 *************************************************************************/

Shortword shl(Shortword var1, Shortword var2)
{
  Shortword swOut;
  Longword L_Out;

  if (var2 == 0 || var1 == 0)
  {
    swOut = var1;
  }
  else if (var2 < 0)
  {

    /* perform a right shift */
    /*-----------------------*/

    if (var2 <= -15)
    {
      if (var1 < 0)
        swOut = (Shortword) 0xffff;
      else
        swOut = 0x0;
    }
    else
      swOut = shr(var1, -var2);

  }
  else
  {
    /* var2 > 0 */
    if (var2 >= 15)
    {
      /* saturate */
      if (var1 > 0)
        swOut = SW_MAX;
      else
        swOut = SW_MIN;
    }
    else
    {

      L_Out = (Longword) var1 *(1 << var2);

      swOut = (Shortword) L_Out;       /* copy low portion to swOut, overflow
                                        * could have hpnd */
      if (swOut != L_Out)
      {
        /* overflow  */
        if (var1 > 0)
          swOut = SW_MAX;              /* saturate */
        else
          swOut = SW_MIN;              /* saturate */
      }
    }
  }
  return (swOut);
}

/***************************************************************************
 *
 *   FUNCTION NAME: shr
 *
 *   PURPOSE:
 *
 *     Arithmetic shift right (or left).
 *     Arithmetically shift the input right by var2.   If var2 is
 *     negative then an arithmetic shift left (shl) of var1 by
 *     -var2 is performed.
 *
 *   INPUTS:
 *
 *     var1
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range 0xffff 8000 <= var1 <= 0x0000 7fff.
 *     var2
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range 0xffff 8000 <= var2 <= 0x0000 7fff.
 *
 *   OUTPUTS:
 *
 *     none
 *
 *   RETURN VALUE:
 *
 *     swOut
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range
 *                     0xffff 8000 <= swOut <= 0x0000 7fff.
 *
 *   IMPLEMENTATION:
 *
 *     Arithmetically shift the input right by var2.  This
 *     operation maintains the sign of the input number. If var2 is
 *     negative then an arithmetic shift left (shl) of var1 by
 *     -var2 is performed.  See description of shl for details.
 *
 *     Equivalent to the Full-Rate GSM ">> n" operation.  Note that
 *     ANSI-C does not guarantee operation of the C ">>" or "<<"
 *     operator for negative numbers.
 *
 *   KEYWORDS: shift, arithmetic shift right,
 *
 *************************************************************************/

Shortword shr(Shortword var1, Shortword var2)
{

  Shortword swMask,
         swOut;

  if (var2 == 0 || var1 == 0)
    swOut = var1;

  else if (var2 < 0)
  {
    /* perform an arithmetic left shift */
    /*----------------------------------*/
    if (var2 <= -15)
    {
      /* saturate */
      if (var1 > 0)
        swOut = SW_MAX;
      else
        swOut = SW_MIN;
    }
    else
      swOut = shl(var1, -var2);
  }

  else
  {

    /* positive shift count */
    /*----------------------*/

    if (var2 >= 15)
    {
      if (var1 < 0)
        swOut = (Shortword) 0xffff;
      else
        swOut = 0x0;
    }
    else
    {
      /* take care of sign extension */
      /*-----------------------------*/

      swMask = 0;
      if (var1 < 0)
      {
        swMask = ~swMask << (16 - var2);
      }

      var1 >>= var2;
      swOut = swMask | var1;

    }
  }
  return (swOut);
}

/***************************************************************************
 *
 *   FUNCTION NAME: sub
 *
 *   PURPOSE:
 *
 *     Perform the subtraction of the two 16 bit input variable with
 *     saturation.
 *
 *   INPUTS:
 *
 *     var1
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range 0xffff 8000 <= var1 <= 0x0000 7fff.
 *     var2
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range 0xffff 8000 <= var2 <= 0x0000 7fff.
 *
 *   OUTPUTS:
 *
 *     none
 *
 *   RETURN VALUE:
 *
 *     swOut
 *                     16 bit short signed integer (Shortword) whose value
 *                     falls in the range
 *                     0xffff 8000 <= swOut <= 0x0000 7fff.
 *
 *   IMPLEMENTATION:
 *
 *     Perform the subtraction of the two 16 bit input variable with
 *     saturation.
 *
 *     swOut = var1 - var2
 *
 *     swOut is set to 0x7fff if the operation results in an
 *     overflow.  swOut is set to 0x8000 if the operation results
 *     in an underflow.
 *
 *   KEYWORDS: sub, subtraction
 *
 *************************************************************************/
Shortword sub(Shortword var1, Shortword var2)
{
  Longword L_diff;
  Shortword swOut;

  L_diff = (Longword) var1 - var2;
  swOut = saturate(L_diff);

  return (swOut);
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品一二区| 欧美日韩国产一级二级| 久久99国内精品| 蜜芽一区二区三区| 日韩精品免费专区| 天堂资源在线中文精品| 天天综合网天天综合色 | 久久超碰97人人做人人爱| 亚洲va欧美va天堂v国产综合| 亚洲黄网站在线观看| 亚洲精品成人天堂一二三| 夜夜精品视频一区二区| 亚洲一级在线观看| 日韩高清国产一区在线| 久久国产精品第一页| 国产一区二区美女| 成人黄页在线观看| 色婷婷香蕉在线一区二区| 欧美影院一区二区三区| 欧美电影一区二区| 欧美变态口味重另类| 337p日本欧洲亚洲大胆色噜噜| 久久久久久久久免费| 日本一区二区免费在线 | 欧美日韩午夜精品| 91黄色免费看| 欧美日韩aaaaa| 日韩欧美国产综合| 国产三级精品视频| 亚洲自拍偷拍综合| 奇米精品一区二区三区四区| 激情图区综合网| 成人av在线一区二区| 在线观看三级视频欧美| 91精品国产综合久久福利软件| 精品日产卡一卡二卡麻豆| 国产精品嫩草影院com| 亚洲综合免费观看高清完整版| 日韩 欧美一区二区三区| 国内成+人亚洲+欧美+综合在线| 成人丝袜高跟foot| 欧美三级电影一区| 26uuu另类欧美亚洲曰本| 亚洲欧美怡红院| 婷婷成人激情在线网| 国产成人鲁色资源国产91色综| 色狠狠桃花综合| 欧美成人vr18sexvr| 亚洲同性gay激情无套| 日韩中文字幕91| 波多野结衣的一区二区三区| 欧美丰满高潮xxxx喷水动漫| 中文字幕精品—区二区四季| 五月天精品一区二区三区| 国产成人鲁色资源国产91色综 | av欧美精品.com| 爽爽淫人综合网网站| 国产一区91精品张津瑜| 在线精品视频一区二区三四| 亚洲精品一区二区三区99| 一区二区久久久久久| 国产激情偷乱视频一区二区三区| 欧美丝袜丝交足nylons图片| 国产午夜精品一区二区三区嫩草 | 欧美精品一区二区在线播放| 亚洲欧美日韩国产手机在线| 久久成人久久鬼色| 欧美绝品在线观看成人午夜影视| 国产欧美精品在线观看| 日本伊人精品一区二区三区观看方式| 成人免费毛片app| 欧美电影精品一区二区| 亚洲一区影音先锋| 成人激情文学综合网| 在线不卡免费欧美| 亚洲激情图片qvod| 成人综合在线网站| 精品精品国产高清a毛片牛牛| 亚洲成a人片综合在线| 99久久免费视频.com| 国产欧美一区二区精品忘忧草| 日韩精品一二区| 欧美三级在线播放| 亚洲免费在线电影| 国产亚洲一区二区三区在线观看| 中文字幕一区二区三区在线播放| 精品在线播放午夜| 91精品国产综合久久福利软件 | 777奇米四色成人影色区| 亚洲区小说区图片区qvod| 国产成人自拍在线| 精品久久久久香蕉网| 美女免费视频一区| 欧美一级高清片在线观看| 亚洲va欧美va天堂v国产综合| 色久综合一二码| 亚洲女人的天堂| 91在线精品一区二区| 国产精品麻豆欧美日韩ww| 大胆欧美人体老妇| 国产精品美女视频| 成人三级伦理片| 欧美国产禁国产网站cc| 国产乱妇无码大片在线观看| 欧美白人最猛性xxxxx69交| 美女视频黄频大全不卡视频在线播放 | www.亚洲在线| 欧美激情一二三区| 成人手机在线视频| 国产精品嫩草99a| 99久久综合色| 亚洲柠檬福利资源导航| 在线一区二区三区四区| 夜夜嗨av一区二区三区网页 | 在线看国产一区二区| 亚洲一区二区三区四区中文字幕| 欧美亚洲综合久久| 亚洲国产另类精品专区| 91精选在线观看| 日本中文在线一区| 日韩女优制服丝袜电影| 国产呦精品一区二区三区网站| ww亚洲ww在线观看国产| 国产成人自拍在线| 日韩伦理电影网| 欧美日韩一区成人| 日本亚洲三级在线| 久久综合九色综合欧美就去吻| 国产麻豆91精品| 亚洲欧美一区二区不卡| 欧美午夜精品理论片a级按摩| 日本伊人色综合网| 国产清纯白嫩初高生在线观看91 | 精品国产第一区二区三区观看体验 | 国产一区二区三区香蕉| 欧美高清在线一区二区| 91视频91自| 日本在线观看不卡视频| 国产欧美一区二区三区鸳鸯浴| 一本久久综合亚洲鲁鲁五月天 | 免费在线观看一区| 久久精品视频在线看| 91麻豆国产香蕉久久精品| 三级成人在线视频| 久久久久久日产精品| 色综合色综合色综合| 奇米影视一区二区三区| 国产精品三级电影| 7777精品伊人久久久大香线蕉最新版| 狠狠网亚洲精品| 一区二区三区中文免费| 欧美成人在线直播| 色综合一个色综合亚洲| 乱中年女人伦av一区二区| 亚洲三级在线免费| 日韩视频一区二区在线观看| 风流少妇一区二区| 日本美女视频一区二区| 国产精品毛片无遮挡高清| 欧美精品一二三四| 不卡影院免费观看| 免费的国产精品| 一区二区三区自拍| 久久亚洲精华国产精华液 | 中文无字幕一区二区三区 | 亚洲综合激情另类小说区| 日韩视频123| 色综合久久中文综合久久牛| 国产一区在线看| 日韩综合小视频| 中文字幕一区二区三区av| 精品欧美乱码久久久久久| 91久久久免费一区二区| 国产大片一区二区| 日本亚洲最大的色成网站www| 综合欧美亚洲日本| 久久九九久精品国产免费直播| 欧美体内she精高潮| aaa国产一区| 国产馆精品极品| 久久91精品国产91久久小草| 亚洲成人免费av| 亚洲日本在线天堂| 国产精品欧美久久久久一区二区| 日韩精品在线一区| 91精品国产欧美一区二区| 在线精品视频免费播放| 99精品在线免费| 国产精品亚洲成人| 久久精品久久久精品美女| 亚洲国产日产av| 夜夜爽夜夜爽精品视频| 亚洲麻豆国产自偷在线| 国产精品你懂的在线欣赏| 国产欧美一区二区三区在线看蜜臀| 欧美一级片在线看| 这里只有精品视频在线观看| 在线一区二区三区做爰视频网站| 99精品视频一区| 不卡的av网站|