Proper "large" IDE HDD support is two-piece:
Detection means that BIOS reports the correct size of the HDD. AWARD BIOS older than 6/1999 screw up with >32GB drives.
Runtime support means that the BIOS must offer additional runtime services to access what's behind the 8 GB border (1024x63x255x512 bytes, to be exact). That's usually called "Int13 extensions", and by far not every BIOS that detects any drive size has these.
That's why you see 20 GB in BIOS and only 8GB in your operating system.
You have three options in this case:
Go back to our BIOS FAQ.
(Examples: how to update your BIOS, how to identify your motherboard)