A real-time address tracer provides designers a realtime monitoring capability which is the kernel of a dynamic debugging system for any embedded system such as the ARM7TDMI. According to the localities of programs, in our previous version, we have provided an effective compression method, which usually uses only 8 to 32 entries (32 bits each entry) of table, a simple counter and low cost hardware instead of 0.5k to 4k entries of dictionary and window used by LZW-based compression methods. This new version adds a preprocessing and its corresponding post-procession steps such that the needed tracing memories can be further greatly decreased by shifting the on-line work loading to the preprocessing and post-processing. Comparing with other work on cost and compression ratio for several benchmarks, the average results of our system are also better than others.