1. A system for computing a block floating point (BFP) scaling factor by detecting a dynamic range of an input signal in a central processing unit (CPU) without additional overhead cycles, said system comprising: a dynamic range monitoring unit that detects said dynamic range of said input signal by snooping (i) outgoing write data and (ii) incoming memory read data of said input signal, wherein said dynamic range monitoring unit comprises: a leading zero and leading one detector and counter unit that detects a count of leading zeros and leading ones for each sub-word of said outgoing write data and said incoming memory read data of said input signal; a registered maximum count unit that stores said count of leading zeros and leading ones for each sub-word of said outgoing write data and said incoming memory read data of said input signal; a least value finder unit that determines a least value of said count of said leading zeros and leading ones over a block of data; and a running maximum count unit that stores said least value of said count of said leading zeros and leading ones over said block of data, wherein said dynamic range is detected based on (i) said least value of said count of said leading zeros and leading ones over said block of data and (ii) a least value of a count of trailing zeros over said block of data; and a scaling factor computation module that computes said block floating point (BFP) scaling factor based on said dynamic range.