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

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

Восстановить пароль Регистрация
 
Abriial
0 / 0 / 0
Регистрация: 31.10.2013
Сообщений: 6
05.11.2013, 21:56     Поразрядные опрации #1
Даны два int-числа n1=ABCD n2=EFGH, где AB..GH - 16-ричные цифры. Образовать long-число HGCDEFAB, используя только поразрядные операции. В подчеркнутых цифрах (DEFA) выполнить инверсию битов в цифрах, младший разряд которых '1'. Помогите довести до ума программу, не могу сделать чтобы выводило H и G, а так же 2 часть задачи. Вот что пока есть.

// ConsoleApplication1.cpp: определяет точку входа для консольного приложения.
//

#include "stdafx.h"
#include "conio.h"
#include "stdio.h"
long num(int n1, int n2);

int _tmain(int argc, _TCHAR* argv[])
{int n1, n2;
long k;
printf("\n Rabota 8");
printf("\n Porazradnie operacii");
printf("\n Complite Gagarinov Stas IT-11 Var-22");
printf("\n Input n1, n2: \n");
scanf_s("%x%x", &n1, &n2);
k=num(n1, n2);
printf("k = %lx ", k);
_getch();
return 0;
}

long num(int n1, int n2)
{
long k=0x0,AB,CD,EF,H,G;
H=(n2>>4) & 0xF;
G=(n2<<1) & 0xF;
CD=n1 & 0xFF;
EF=n2 & 0xFF;
AB=(n1>>8) & 0xFF;
k=k | (H<<4*7);
k=k | (G<<4*6);
k=k | (CD<<4*4);
k=k | (EF<<4*2);
k=k | AB;
return(k);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.11.2013, 21:56     Поразрядные опрации
Посмотрите здесь:

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

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 18:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru