<?xml version="1.0" encoding="UTF-8"?>
<XML><RECORDS>
<RECORD>
	<REFERENCE_TYPE>0</REFERENCE_TYPE>
	<AUTHORS>
		<AUTHOR>Freed, Adrian</AUTHOR>
	</AUTHORS>
	<YEAR>1993</YEAR>
	<TITLE>Guidelines for signal processing applications in C</TITLE>
	<SECONDARY_TITLE>C Users Journal</SECONDARY_TITLE>
	<PAGES>85(9)</PAGES>
	<ABSTRACT>Signal processing algorithms programmed in C must be as efficient and clear as possible because of their importance to time-critical applications. Careful programming and use of an optimizing compiler for a modern processor make it possible to make the algorithms efficient without sacrificing clarity. The first audio signal processing library function listed uses C's ability to express low-level operations to optimize code performance for a specific compiler or machine, while the second listing is clearer and uses no register variables, pointers, or temporary variables; it also makes no special case for vectors of contiguous elements. The simpler version was found to run slightly faster than the hand-optimized version by eliminating the test for the special case of increments by one. Guidelines for choosing the right algorithm, choosing and controlling data types, and memory layout are described.</ABSTRACT>
	<URL>http://cnmat.berkeley.edu/publications/guidelines_signal_processing_applications_c</URL>
</RECORD>
</RECORDS></XML>