Для железа всё довольно просто : все зависит от процесса - каждая команда имеет определённое время выполнения. При программировании может потребоваться использовать типы данных, с которыми процессор не умеет работать. Понятно, что умножение сводится к циклу сложения и сдвигов, а деление к циклу вычитаний и сдвигов. Поэтому деление и умножение будут более ресурсоемкие, чем сложение и вычитание.