Digital Signal Processing: A Computer Based Approach