2 / 2 / 0
Регистрация: 28.11.2012
Сообщений: 39
1

16-битные числа

07.10.2013, 20:26. Показов 4065. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Данные два 16-битных числа A (aa. .. a) и B (bb. .. b), случайным образом выбирается точка разрыва t и получаем 2 числа (С1 и С2):
для первого числа биты от 0 до t берем из числа A, а другие с B;
для второго числа биты от 0 до t берем из числа В, а другие с А;
То есть, как в этом примере (для t = 5):
0 t 16 0 t 16
С1 = aaaaabbbbbbbbbbb и С2 = bbbbbaaaaaaaaaaa
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.10.2013, 20:26
Ответы с готовыми решениями:

Написать функцию, которая принимает массив 32-ых битных целых чисел и возвращает 16-ые битные целые числа
Доброго времени суток! Знаю, тема возможно избитая и есть на форуме. У меня в условиях задачи дан...

Что выгодней 64-битные или 32-битные программы
Please, помогите разобраться с терминами, правильно ли я понимаю эти четыре термина: 32-битные...

Сравнить 16-битные числа
Здравствуйте. Подскажите как сравнить два 16-битных числа и если больше или равно перейти на метку?

A^B mod C, 64-битные числа
Сабж. Все числа - натуральные, меньше {2}^{63}. Как можно модифицировать алгоритм быстрого...

6
23 / 23 / 10
Регистрация: 11.07.2013
Сообщений: 94
07.10.2013, 20:51 2
Для решения этой задачи используй библиотеку #include <bitset>
Как раз предназначена для работы с битами.

К примеру.

bitset<16> number; // Число из 16 битов, все нули.

Работать с number можно как с самым обычным массивом.
1
2 / 2 / 0
Регистрация: 28.11.2012
Сообщений: 39
07.10.2013, 21:01  [ТС] 3
Цитата Сообщение от NanoBreaker Посмотреть сообщение
bitset<16> number; // Число из 16 битов, все нули.
Тоисть если
C++
1
bitset<16> а
то я получу при виводе рядок из шестнадцати символов "а"?
0
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
07.10.2013, 21:04 4
а что операции & и | отменили?)
1
8 / 8 / 0
Регистрация: 06.10.2013
Сообщений: 19
07.10.2013, 21:10 5
Sasha 93,
Надеюсь, суть понятна будет
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <bitset>
 
int main()
{
    std::bitset<16> a[5] = {0, 1, 12, 5, 2};
    std::cout << a[3] << '\n';
 
    system("pause >> break");
    return 0;
}
 
// результат:
// 0000000000000101
0
23 / 23 / 10
Регистрация: 11.07.2013
Сообщений: 94
07.10.2013, 21:21 6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <bitset>
#include <conio.h>
 
using namespace std;
 
int main()
{
    __int16 A = 0;
    __int16 B = 0;
    bitset<16> A_bs;
    bitset<16> B_bs;
    bitset<16> C1;
    bitset<16> C2;
    short int t = 0;
 
    cout << "Input A: "; cin >> A; A_bs = A;
    cout << "Input B: "; cin >> B; B_bs = B;
    cout << "Input t: "; cin >> t;
 
    for(int i = 0; i < 16; i++)
    {
        if(i < t){
            C1[i] = A_bs[i];
            C2[i] = B_bs[i];
        }else{
            C1[i] = B_bs[i];
            C2[i] = A_bs[i];
        }
    }
 
    for(int i = 0; i < 16; i++) cout << C1[i];
    cout << endl;
    for(int i = 0; i < 16; i++) cout << C2[i];
 
    getch();
    return 0;
}
Биты выводятся в обратном порядке, но я думаю с этим ты и сам разберешься.
1
831 / 639 / 101
Регистрация: 20.08.2013
Сообщений: 2,524
08.10.2013, 13:05 7
Цитата Сообщение от NanoBreaker Посмотреть сообщение
bitset<16> number; // Число из 16 битов, все нули.
Ну что за извращение? Всё же просто:
C++
1
unsigned short number = 0;
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.10.2013, 13:05
Помогаю со студенческими работами здесь

Напишите программу для вычисления формулы. Все числа 16-битные целые со знаком
Напишите программу для вычисления формулы. Все числа 16-битные целые со знаком. k=m+1-(m+1+n-...

64 и 32 битные ОС
Парни, подскажите чайнику, в чем различие межу этими ОС? Какую лучше ставить? Слышал, что х64 можно...

16-битные программы
16-битные программы идут на 64-бит ОС? И вообще n-битные программы идут на m-битные ОС, если n&lt;m? ...

64-х и 32-х битные системы
Пишу в MSVS 2012 на Windows 8... интересует вопрос, почему программа не запускается на 32-х битных...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru