Pytanie pierwsze: dlaczego dzielenie jest wolniejsze od mnożenia?
Przyczyna jest zupełnie inna niż napisali przedmówcy: podstawowym problemem dla którego mnożenie na procesorze jest wielokrotnie szybsze (nie 30% szybsze ale dziesiątki razy szybsze; dla przykładu na procesorach Intel Haswell: mnożenie ma opóźnienie 3 cykle dla 64-bitowych liczb, dzielenie ma maksimum 103 cykle opóźnienia) jest to, że mnożenie się łatwo zrównolegla, a dzielenie trudno.
Dla przykładu mnożenie 64 bity x 64 bity można rozbić na 8 mnożeń 64 bity x 8 bitów, a następnie 7 dodawań. Te dododawania też można ttochę zrównoleglić układając je w drzewo dodawań - wtedy wystarczy tyle kroków ile wynosi głębokość drzewa - tutaj 3 kroki.
Pytanie drugie: jak się odbywa jedno i drugie?
To jest mocno zależne od implementacji. Ale Wikipedia jest twoim przyjacielem:
http://en.wikipedia.org/wiki/Multiplication_algorithm
http://en.wikipedia.org/wiki/Division_algorithm
Pytanie trzecie: czy dzielenie liczby całkowitej przez liczbę całkowitą różni się (funkcyjnie) od mnożenia liczby całkowitej przez ułamek?
Nie wiem o co chodzi z tym funkcyjnie, ale logiczne jest, że dzielenie liczb całkowitych nie wymaga operowania na floatach, a co za tym idzie odpada mnóstwo sytuacji szczególnych (NaNs, denormals, nieskończoności, itd). Jak już napisałem wcześniej - mnożenie jest zdecydowanie szybsze na chyba wszystkich możliwych procesorach które dzisiaj są sprzedawane.
Możenie, zarówno na integerach jak i floatach jest zwykle sporo szybsze niż dzielenie - także zarówno na integerach jak i floatach. Mówię tutaj o CPU, w których nie szkoda tranzystorów na to by uzyskiwać wysoką wydajność jednowątkową. W przypadku GPU (przynajmniej Radeonów) jest tak, że priorytetem są floaty i np mnożenie floatów 32-bit (przypominam: mantysa jest tam 24-bitowa) jest tak samo szybkie jak mnożenie intów 24-bitowych, ale już mnożenie intów 32-bitowych wymaga programowej emulacji lub innych metod znacząco wolniejszych od prostego mnożenia.
PS:
Tabele z opóźnieniami poszczególnych instrukcji na różnych architekturach masz np tutaj: http://agner.org/optimize/instruction_tables.ods