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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Roland Discane
0 / 0 / 0
Регистрация: 20.10.2013
Сообщений: 45
#1

Соединение двух 32 битных блоков в 64 битный и обратно - C++

31.03.2014, 01:39. Просмотров 248. Ответов 4
Метки нет (Все метки)

Есть переменная __unt64 и две переменных unsigned unsigned int. Могу ли я получить один 64 битный блок из двух 32 битных и обратно?

Добавлено через 5 минут
Вот пример из ГОСТовского шифрования:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
for (int i = 0; i < 4; i++) {
                if (n) {
                    read2.read((char*)(&s2), 1);
                    A += (s2 << (24 - (i * 8)));
                    n--;
                }
            }
            n = 4;
            sizeFile += 4;
            for (int i = 0; i < 4; i++) {
                if (n) {
                    read2.read((char*)(&s2), 1);
                    B += (s2 << (24 - (i * 8)));
                    n--;
                }
            }
Тут собираются 32 битные блоки. А как из этих A и B собрать 64 битный?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2014, 01:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Соединение двух 32 битных блоков в 64 битный и обратно (C++):

Соединение двух блоков питания по 350 W вместе? - Компьютерное железо
Nu znachit tak... est u menea 2 bloka pitanie po 350W kajdi CODEGEN i FSP! Na dani moment na kompe stoit FSP nu posle nebolshova obgreida...

Параллельная вертикальная прокрутка двух блоков и отдельная горизонтальная прокрутка одного из двух блоков - HTML, CSS
Всем привет! Помогите решить проблему, пожалуйста. Есть блок div, внутри которого два блока div (в каждом из них по одной таблице),...

WIX Как добавить в реестр 32 битный ключ, если инсталлер 64 битный? - Инсталляторы
Имеется: &lt;Package InstallerVersion=&quot;200&quot; Compressed=&quot;yes&quot; SummaryCodepage=&quot;1251&quot; Platform=&quot;x64&quot; ...

Алгоритм формирования 32-битных чисел с плав. точкой из полученных 16-ти битных integer - C (СИ)
Здравствуйте, уважаемые форумчане! Прошу Вас помочь с задачей. Уповаю на Вас! :) Наш контроллер (НК) опрашивает некое устройство...

MPLAB. Разница двух 32-битных чисел - Микроконтроллеры
Столкнулся с такой задачей: Реализовать подпрограмму в Assembler, которая от 32-битного числа А отнимет 32-битное число В и результат...

Как на 64-битный ноут установить 32-битный XP? - Windows XP
Как на 64- битный ноут установить 32-битный XP?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ZaMaZaN4iK
Мой лучший друг-отладчик!
164 / 164 / 9
Регистрация: 24.06.2012
Сообщений: 662
Записей в блоге: 5
Завершенные тесты: 1
31.03.2014, 01:49 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
 
using namespace std;
typedef unsigned long long ll;
 
int main()
{
    unsigned int a=123,b=456;
    ll c;
    c=(c^a)<<(sizeof(a)*8);
    c=(c^b);
    cout<<c;
    system("pause");
    return 0;
}
так что-ли?
0
Roland Discane
0 / 0 / 0
Регистрация: 20.10.2013
Сообщений: 45
31.03.2014, 01:54  [ТС] #3
ZaMaZaN4iK, Да, спасибо. А обратно тогда как?
0
ZaMaZaN4iK
Мой лучший друг-отладчик!
164 / 164 / 9
Регистрация: 24.06.2012
Сообщений: 662
Записей в блоге: 5
Завершенные тесты: 1
31.03.2014, 01:59 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
 
using namespace std;
typedef unsigned long long ll;
 
int main()
{
    unsigned int a=0,b=0;
    ll c=1234567899876;
    b=b^c;
    c>>=sizeof(a)*8;
    a=a^c;
    system("pause");
    return 0;
}
1
Roland Discane
0 / 0 / 0
Регистрация: 20.10.2013
Сообщений: 45
31.03.2014, 02:08  [ТС] #5
ZaMaZaN4iK, Спасибо тебе большое)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.03.2014, 02:08
Привет! Вот еще темы с ответами:

создание 32-битных программ на 64 битных системах - Delphi
в вопрос в заголовке ....сижу на 64бит системе , возникла проблема , нужно разрабатывать софт на 32 б систему ... как ? использую delphi xe...

Соединение 2-х системных блоков на один монитор. - Компьютерное железо
Привет всем!!! Я бы хотел поинтересоватся у меня есть два системных блока и один монитор можно ли их соединить и если можно то раскажите по...

преобразовать 8-битный bmp в 24-битный - Delphi
помогите!!!вообще не имею понятия как это сделать:wall:

Обменяйте значения двух 32-х битных регистров между собой. Другие регистры использовать нельзя. - Assembler
Обменяйте значения двух 32-х битных регистров между собой. Другие регистры использовать нельзя. А как это реализовать без других...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
31.03.2014, 02:08
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru