Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Модульное деление на степень двойки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ C++ почему прога вылетает, не успеваю посмотреть действие http://www.cyberforum.ru/cpp-beginners/thread718705.html
дан массив строк, если какая либо строка заканчивается буквой k, то удалить эту строку, вод что я написал: #include <iostream.h> #include <conio.h> #include <stdio.h> #include <math.h> #include...
C++ В n мерном массиве целых чисел, вычислить сумму отрицательных элементов массива, положительных, и упорядочить все элементы массива по возрастанию Ребят помогите решить! В n мерном массиве целых чисел, вычислить сумму отрицательных элементов массива, сумму положит элементов массива, и упорядотчить все элементы массива по возрастанию http://www.cyberforum.ru/cpp-beginners/thread718693.html
C++ Из чисел от 10 до 99 вывести те, сумма цифр которых равна n
Из чисел от 10 до 99 вывести те, сумма цифр которых равна n (n вводится с клавиатуры, n =< 18) Очень прошу. Заранее благодарен.
C++ CUDA C/C++ сложение векторов
вроде все так делаю, но не запускается не могу понять ошибку делаю с шаблона там просто надо заполнить недастоющие строчки вот шаблон // MP 1 #include <wb.h> __global__ void vecAdd(float *...
C++ Квадрат натурального числа n http://www.cyberforum.ru/cpp-beginners/thread718682.html
Проверить, содержит ли квадрат натурального числа n цифру 3 в своей записи. Большое спасибо заранее!
C++ Найти количество слов, у которых первый и последний символы совпадают между собой Помогите пожалуйста написать программу, никак разобраться не могу( подробнее

Показать сообщение отдельно
WhiteP
606 / 204 / 23
Регистрация: 20.11.2012
Сообщений: 426
04.12.2012, 17:10
Цитата Сообщение от taras atavin Посмотреть сообщение
Деление он не выполняет, он возвращает остаток. Побочный низкоуровневый результат в виде частного при этом теряется.
Просто операция деления одна из самых затратных по времени (на уровне тактов, конечно)

Добавлено через 4 минуты
Если константой заменить (a % 8), то вот так оптимизирует.

Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
?mod1@@YAHH@Z PROC                  ; mod1, COMDAT
; _a$ = ecx
 
; 6    :    return a % 8;
 
    and ecx, -2147483641            ; 80000007H
    jns SHORT $LN3@mod1
    dec ecx
    or  ecx, -8                 ; fffffff8H
    inc ecx
$LN3@mod1:
    mov eax, ecx
 
; 7    : }
 
    ret 0
?mod1@@YAHH@Z ENDP
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru