An improved turning point system and method for performing data compression is disclosed. The system improves the conventional turning point compression method by selecting a predetermined number of the "best" turning points in the sample window including data samples X0 and XN. From this sample-window, ones of the data samples X1 through X(N-1) will be identified as turning points using a selected one of a disclosed set of turning point detection methods. In one embodiment, a turning point is identified by determining that the slopes in the lines interconnecting adjacent data points have different polarities. In an alternative embodiment, a data sample XM is considered a turning point if the slope of the line between the data samples XM and X(M+1) has a different polarity as compared to the slope of the last waveform segment that was encountered that did not have a slope of zero. According to one mechanism, amplitude thresholding is used to detect whether an identified turning point is likely the result of noise such that the turning point status of the data sample should be disregarded. After data samples are identified as turning points, ones of the identified turning points are identified as the "best" turning points to be selected for retention. The best turning points may be identified by determining which waveform segment included within a sample window has the largest change of amplitude. An alternative embodiment detects which of the turning points has the greatest signal amplitude compared to a reference value. Yet another embodiment selects as the best turning point that point having an amplitude that differs the most from the amplitude of the first data sample in the sample window. Still other embodiments retain the turning point having an amplitude which is more positive, or alternatively, more negative, than the other data samples. According to one aspect of the invention, the compression ratio varies based on the frequency of the input waveform. In another embodiment, position data is retained to indicate the relative position of retained data samples as compared to the position of other retained data samples. This position data may be calculated at a frequency that is less than the frequency of the sampled data.