pack.c
上传用户:tsjrly
上传日期:2021-02-19
资源大小:107k
文件大小:1k
- /**************************************************************************
- *
- * ROUTINE
- * pack (pack tau into binaru bit stream)
- *
- * FUNCTION
- * Input decimal value and number of binary bits,
- * program returns binary value packed in array.
- *
- * SYNOPSIS
- * subroutine pack(value, bits, array, pointer)
- *
- * formal
- *
- * data I/O
- * name type type function
- * -------------------------------------------------------------------
- * value int i decimal value
- * bits int i number of bits to convert to
- * (ie. 01001 for 5 bits, 1st 0 incl.)
- * array short o array to which one bit is assigned
- * for binary representation
- * pointer int * i/o points to appropriate element in
- * array
- *
- ***************************************************************************
- *
- * DESCRIPTION
- *
- * This program packs a decimal value into a binary value
- * to be decoded by unpack.c in CELP synthesizer sections.
- *
- ***************************************************************************
- *
- * CALLED BY
- *
- * celp
- *
- * CALLS
- *
- *
- *
- **************************************************************************/
- pack(value, bits, array, pointer)
- int value, bits, *pointer;
- short array[];
- {
- int i;
- for (i = 0; i < bits; (*pointer)++, i++)
- array[*pointer] = (value & 1 << i) >> i;
- }