The way I work out how quickly I'm going to download/upload a file is this:
When your ISP says you'll get 4mb/s (megaBITS usually) download, I change the figure to 4000 kilobits per second, then minus 24 from it per every 1000 kilobits there is (due to one kilobyte containing 1024 bytes, not 1000). Then, I divide the figure by 8, because there is 8 bits in a byte.
So, (4000 - 96) / 8 = 488 kilobytes per second download.
Sadly, my ISP's upload is poor, so it's usually a tenth of the download speed. So 4000 kilobits per second will = 400 kilobits per second upload.
So, because it's 600 kilobits below 1000 kilobits, you 24 / 6 = 4, then * 10 = 40. Take that away from the 400 megabits you, you set the sum of 360 / 8 = 45 kilobytes per second upload (I think).
So, in total, because there are 1024 kilobytes in a mega byte, with 488 kilobytes per second download, you should download 1 mega byte in 2.098 (2 dp) seconds, and upload a 1 mega byte file in 22.76 (2 dp) seconds, with 4 megabit broadband. Of course, as mentioned above, it varies greatly if your line is busy, ISP is busy, etc, etc.
Wikipedia also shows a brief explanation:
http://en.wikipedia.org/wiki/Megabit
I hope that made some sense.