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

Поразрядные операции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Составить программу вычисления функций и печати ( паскаль) http://www.cyberforum.ru/cpp-beginners/thread997722.html
Помогите пожалуйста срочно решить задачку(( вопрос жизни и смерти (((
C++ Шаблон вектор в шаблоне стека -.- Нужно создать объект шаблонного класса стек, содержащий объекты шаблонного класса вектор. Вот класс стек: template <class T> class Stack { private: class Node { public: T d; Node... http://www.cyberforum.ru/cpp-beginners/thread997716.html
Удаление пункта файла C++
Подскажите как сделать удаление пункта записи файла? void del_punkt() { cout << "Удаление пункта записи файла" << endl; system("pause"); system("cls"); }
C++ Как переделать for в while?
for (x=1;x<=3; x+=1.3) { for (y=2;y<=4; y+=1.5) { U1=e*cos(M_PI*pow(x,2))-y; U2=pow(x*pow(y,2),2./3)-1./pow(x,1./3); { if (U1>U2) Umin=U2; else
C++ Запись/чтение из файла http://www.cyberforum.ru/cpp-beginners/thread997686.html
Исходный код 1ой программы. Динамически выделяет память для строки и что-то с ней делает - работает. //calloc.cpp //Использование calloc #include <stdio.h> #include <stdlib.h> #include...
C++ Union Здравствуйте! Я уже задавал тут вопрос, как использовать union, и сейчас столкнулся с проблемой: Есть 3 файла и заголовочный файл - Struct.h Дальше довольно много текста, но, плиз, помогите... подробнее

Показать сообщение отдельно
ValeryS
Модератор
6729 / 5138 / 485
Регистрация: 14.02.2011
Сообщений: 17,245
04.11.2013, 22:34
Цитата Сообщение от gng Посмотреть сообщение
Я всего лишь предположил, что задание давал не дурак.
сомнительно, с таким ТЗ на любом предприятии был бы послан
Цитата Сообщение от gng Посмотреть сообщение
Уже почти правильно. Осталось внимательнее почитать условие. Двигаются не только байты, но и четверки битов.
четверки байтов называются полубайты
тебе по шагам расписать

пожалуйста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
unsigned long int fnc(unsigned int a, /*число q1q2q3q4*/
 unsigned int b /* число m1m2m3m4*/ )
{
unsigned char n1=b;// заносим младший байт числа b  m3m4
unsigned char n2=b>>8;// заносим старший байт числа b  m1m2
n1=(n1<<4) | (n1>>4); // циклический сдвиг байта на 4 старший и младший полубайт меняются местами m4m3
n2=(n2<<4) | (n2>>4);// циклический сдвиг байта на 4 старший и младший полубайт меняются местами m2m1
return ((a&0xF0)// выделяем старший байт q1q200
|(a>>8))  // старший байт сдвигаем на 8 получаем 00q1q2 после операции или число равно q1q2 q1q2 
|(((n1<<8)  // сдвигаем вправо на 8 получаем m4m300
|n2)  // после операции или получаем m4m3m2m1
<<16); // после сдвига m4m3m1m20000 после операции или m4m3m2m1q1q2q1q2
}  // возвращаем число m4m3m2m1q1q2q1q2
что еще куда сдвинуть нужно????
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.