hey guys thanks for replying, i have googled and i have read the wikipedia page before. I am bit dubious on the scaling part of it. embedded.com has a very good article on fixed point implementation. But it is a bit too complicated for the project i am doing!

Well I implemented an algorithm to calculate inverse of a complex matrix, so it reduces the complexity of code. Need to implement it in fixed point because it needs to be converted so that it can run on a dsp. I can't get my head around the scaling bit, it would help if anyone can post a link explaining the basic idea of scaling.

Consider 2 numbers in 4.4 fixed point format.
So 1 would (in binary) be 00010000, which is in fact 16 if treated as a regular value

Now if we were to do 1 * 1, we would end up with 100000000, but to make the actual result mean 1 once more, we need to shift the result to the right by 4 places.