Itu tergantung pada bahasa, pada kompiler, pada apakah Anda menggunakan bilangan bulat atau angka floating point, dan sebagainya.
Untuk angka floating point, sebagian besar implementasi menggunakan standar IEEE 754 , di mana pembagian dengan 0 didefinisikan dengan baik. 0/0 memberikan hasil NaN yang jelas (bukan-angka), dan x / 0 untuk x ≠ 0 memberikan + Infinity atau -Infinity, tergantung pada tanda x.
Dalam bahasa seperti C, C ++ dll pembagian dengan nol memanggil perilaku tidak terdefinisi. Jadi menurut definisi bahasa, apa pun bisa terjadi. Terutama hal-hal yang tidak Anda inginkan terjadi. Seperti semuanya bekerja dengan sangat baik ketika Anda menulis kode dan menghancurkan data saat pelanggan Anda menggunakannya. Jadi dari sudut pandang bahasa, jangan lakukan ini . Beberapa bahasa menjamin bahwa aplikasi Anda akan macet; terserah mereka bagaimana ini diterapkan. Untuk bahasa-bahasa tersebut, pembagian dengan nol akan macet.
Banyak prosesor memiliki semacam instruksi "bagi" built-in, yang akan berperilaku berbeda tergantung pada prosesor. Pada prosesor Intel 32bit dan 64 bit, instruksi "bagi" akan membuat aplikasi Anda macet ketika Anda mencoba membagi dengan nol. Prosesor lain mungkin berperilaku berbeda.
Jika kompiler mendeteksi bahwa pembagian dengan nol akan terjadi ketika Anda mengeksekusi beberapa kode, dan kompiler itu baik untuk penggunanya, itu kemungkinan akan memberi Anda peringatan, dan menghasilkan instruksi "bagi" yang sudah ada di dalamnya sehingga perilakunya adalah sama.