Skip to Main Content
Fixed-point C language is proposed for convenient and efficient programming of fixed-point digital signal processors. This language has a 'fix' data type that can have an individual integer wordlength according to the range of a variable. It can add or subtract two data having different integer wordlengths by automatically inserting shift operations. The accuracy of the fixed-point multiply operation is significantly increased by storing the upper part of the multiplied double-precision result instead of keeping the lower part as in the integer multiplication. The quantization noise resulting from fixed-point arithmetic is significantly reduced when compared with conventional integer programs. The execution speed is much, nearly 20 times, faster than a floating-point C program in fixed-point digital signal processors.