Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Mee
14 / 14 / 1
Регистрация: 05.07.2010
Сообщений: 88
1

Упорядочить байты машинного слова

27.11.2010, 19:02. Просмотров 826. Ответов 2
Метки нет (Все метки)

Задание стоит так:
Упорядочить байты четырьохбайтового машинного слова по возрастанию их значений, использовав подходящие структуры данных.
Подскажите что это за структуры и как вообще это делается

Добавлено через 16 минут
Может использовут такую вот структуру?
C++
1
2
3
4
5
6
7
struct Word4
{
    unsigned _byte1: 8;
    unsigned _byte2: 8;
    unsigned _byte3: 8;
    unsigned _byte4: 8;
}
обьясните как именно сравнивать байты?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2010, 19:02
Ответы с готовыми решениями:

Расположить байты машинного слова в обратном порядке
Подскажите, пожалуйста, как можно расположить байты машинного слова в обратном...

Упорядочить байты
Помогите додумать. Нужны упорядочить байты в порядке возрастания количества...

Упорядочить по алфавиту буквы каждого слова и удалить слова, содержащие одинаковые буквы
Преобразовать данное предложение, упорядочив по алфавиту буквы каждого слова и...

Упорядочить слова по возрастанию количеств букв "d", входящих в слова
Помогите пожалуйста написать программу. Дана последовательность слов,...

Упорядочить слова в предложении
Упорядочить слова в предложении

2
Somebody
2801 / 1612 / 251
Регистрация: 03.12.2007
Сообщений: 4,215
Завершенные тесты: 3
27.11.2010, 19:07 2
Думаю, если считать, что char имеет размер 1 байт, а int - 4 байта, то проще сделать
C++
1
2
3
4
5
union
{
  int dword;
  char bytes[4];
}
и отсортировать bytes любым методом.
0
Mr.X
Эксперт С++
3182 / 1709 / 435
Регистрация: 03.05.2010
Сообщений: 3,867
27.11.2010, 19:44 3
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
39
40
41
42
43
44
45
46
47
48
49
50
51
//////////////////////////////////////////////////////////////////////////////////////
//Упорядочить байты четырьохбайтового машинного слова по возрастанию их значений, 
//использовав подходящие структуры данных. 
//////////////////////////////////////////////////////////////////////////////////////
#include <algorithm>
#include <iomanip>
#include <iostream>
#include <vector>
//////////////////////////////////////////////////////////////////////////////////////
typedef unsigned  T_4_byte_word;
typedef char      T_byte;
//////////////////////////////////////////////////////////////////////////////////////
union T_4_byte
{
    T_4_byte_word  _4_byte_word;
    T_byte         byte_arr[4];
};
//////////////////////////////////////////////////////////////////////////////////////
int main()
{
    std::locale::global(std::locale(""));
    for(;;)
    {
        std::cout << "n = ";
        T_4_byte  _4_byte;
        std::cin >> _4_byte._4_byte_word;        
        std::sort(_4_byte.byte_arr, _4_byte.byte_arr + 4);
        std::cout << "Число n с отсортированными байтами по возрастанию"
                  <<std::endl
                  << "\t"
                  << "от младших к старшим: "
                  << std::hex
                  << std::setfill('0')
                  << std::setw(10)
                  << std::showbase
                  << std::internal
                  << _4_byte._4_byte_word
                  << std::endl;
 
        std::reverse(_4_byte.byte_arr, _4_byte.byte_arr + 4);
        std::cout << "\t"
                  << "от старших к младшим: "
                  << std::setfill('0')
                  << std::setw(10)
                  << _4_byte._4_byte_word
                  << std::endl
                  << std::endl
                  << std::endl
                  << std::endl;            
    }
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2010, 19:44

Упорядочить слова в текстовом рядке
Помогите,пожалуйста,со следующим заданием. Ввести в текстовый рядок несколько...

Упорядочить слова в алфавитном порядке на С
ребят помогите с задачкой, а то препод озадачил. самому не получается сделать....

Упорядочить слова по алфавиту (строки)
Здравствуйте! Не могу пока осилить :wall:. Может у кого-то есть идеи по...


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

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

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