С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Пояснение побитовых операций - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Класс "Прямоугольник" с олным набором функционала (расчёт площади, периметра и т.д.) http://www.cyberforum.ru/cpp-beginners/thread676622.html
разработать класс для прямоугольника чтоб считал площадь периметр и тд всё что можно...чтобы присутствовал конструктор диструктор,функции различные... плиз срочно надо(если можете с коментами)
C++ проверьте что не так в коде? #include <stdlib.h> #include <stdio.h> #include <time.h> int main() { int i,j,n=9; int a; srand(time(NULL)); for (i=0,i<n,++i) http://www.cyberforum.ru/cpp-beginners/thread676618.html
C++ Решение квадратного уравнения
Всем доброго время суток. Написать программу для решения квадратного уравнения общего вида a*{x}^{2}+ b*x + c = 0. Параметры a, b и c вводятся с клавиатуры. Использовать аналитические формулы для...
C++ Вычислить сумму положительных элементов матрицы
помогите написать программу, Вычислить сумму положительных элементов матрицы, находящихся под главной диагональю и на ней. Массив Х. Условия и ограничения: Xij - целые числа
C++ основы алгоритмизации http://www.cyberforum.ru/cpp-beginners/thread676605.html
помогите написать программу, Условие задачи:Подсчитать число точек, находящихся внутри круга радиусом R с центром в начале координат; координаты заданы массивами X, Y. Исходные данные:R=3...
C++ Указатель на структуру если struct1,это структура,а acccum,это функция то что значит struct1 & accum(struct1 &target, struct1 &source) Добавлено через 1 минуту функция возвращающая ссылку на структуру? подробнее

Показать сообщение отдельно
Анастасия плюс
0 / 0 / 0
Регистрация: 02.03.2009
Сообщений: 28

Пояснение побитовых операций - C++

21.10.2012, 16:48. Просмотров 613. Ответов 1
Метки (Все метки)

Прошу объяснить на пальцах/на примере что значит следующая строчка, каким именно образом осуществляется сдвиг вправо на 4 разряда? что именно получаем при умножении на & 0xffff?

mid = (sqr>>4) & 0xffff;

Хочу применить её к методу серединных квадратов,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<stdafx.h>
#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<time.h>
 
using namespace std;
 
 
int main()
{
    int x = 4824;
    int sqr;
    int mid;
 
  sqr = x*x;
  mid = (sqr>>4) & 0xffff; 
 
  printf ("x = %d sqr = %d mid = %d\n",x,sqr,mid);
  getch();
  exit (0);
}
И второй вопрос:
Что, если после возведения икса в квадрат число получится не восьмизначным? Как проверить это и в случае необходимости добавить слева нули?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.