Mengapa ada begitu banyak tipe numerik (bit, int, float, double, long)?

Saya telah belajar PHP, Java, dan C. Sekarang saya ingin tahu mengapa ada begitu banyak jenis tipe data numerik seperti bit, int, float, double, dan panjang. Mengapa tidak membuat hanya satu jenis untuk numerik? Apakah ada manfaatnya? Mungkin jika kita menggunakan bilangan bulat untuk menampung...