- •Нижний Новгород 2005 Составитель ф.В. Жаринов
- •Научный редактор в.В. Крылов
- •Предисловие
- •Лабораторная работа 3 Классы памяти
- •Задание 1.
- •Задание 2.
- •Лабораторная работа 4 Кодирование информации с помощью битовых масок. Побитовые операции
- •Вариант 1,2
- •Вариант 3,4.
- •Контрольная сумма
- •Лабораторная работа № 5 Работа с файлами и строковыми данными
- •Вариант №1
- •Вариант №2
- •Вариант №3
- •Вариант №4
- •Лабораторная работа № 6 Алгоритмы сортировки
- •Лабораторная работа № 7 Картотека. Вариант №1
- •Вариант №2
- •Требования к программе
- •Методические указания
- •01 | Андрей | Смирнов | 26 | Прогр. || TimeWarp | Athlon 2.4 | 512 |
- •02 | Алексей | Гагарин | 26 | Менеджмент || TimeWarp | Evil, Inc. | 3 |
- •03 | Андрей | Комягин | 26 | Доставка || Москва, 3 | Evil, Inc. | 24 | Авто
Лабораторная работа 4 Кодирование информации с помощью битовых масок. Побитовые операции
Написать программу, декодирующую информацию о некотором объекте, зашифрованную во вводимом с клавиатуры числе. Информация кодируется в виде битовых полей, т.е. каждое свойство описываемого объекта кодируется в виде одного или нескольких битов.
Разрабатываемая программа должна:
-
Обеспечивать ввод числа типа unsigned char (беззнаковое, 8 бит) с клавиатуры.
-
Вывести введённое число на экран в двоичном виде.
-
Декодировать информацию об объекте в соответствии с вариантом, и вывести её на экран в удобном виде.
-
Подсчитать контрольную сумму и вывести на экран информацию о ней, а также заключение о целостности закодированной информации.
Вариант 1,2
Кодирование информации о MPEG файле. Ввести с клавиатуры число от 0 до 255 - данное число содержит информацию о файле. Информация закодирована в следующем виде:
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Layer |
Type |
Bitrate Info |
CS |
Layer:
0 – Layer I
1 – Layer II
2 – Layer III
3 – Reserved
Type:
0 – Constant Bitrate (CBR)
1 – Variable Bitrate (VBR)
CS: Контрольная сумма (см. ниже).
Вариант 1: Контрольная сумма рассчитывается только для блока Bitrate Info.
Вариант 2: Контрольная сумма рассчитывается для всех информационных бит числа (т.е. для всех бит за исключением бита контрольной суммы).
Bitrate Info: декодируется по-разному в зависимости от Bitrate:
Constant Bit Rate (CBR).
-
4
3
2
1
Mode
Bitrate
Mode:
0 – Mono
1 – Stereo
Bitrate:
0 – 32 kbps
1 – 48 kbps
2 – 64 kbps
3 – 96 kbps
4 – 128 kbps
5 – 192 kbps
6 – 256 kbps
7 – 320 kbps
Variable Bit Rate (VBR).
-
4
3
2
1
Range
Mode
Range:
0 – 32-48 kbps
1 – 64-96 kbps
2 – 128-192 kbps
3 - 256-320 kbps
Mode:
0 – Stereo
1 – joint stereo
2 – dual channel
3 – single channel
Вариант 3,4.
Кодирование информации о человеке. Ввести с клавиатуры число от 0 до 255 - данное число содержит информацию о человеке. Информация закодирована в следующем виде:
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Sex |
Age |
Appearance |
CS |
Sex:
0 – male
1 – female
Age:
0 – child
1 – teenager
2 – adult
3 - senior
CS: Контрольная сумма (см. ниже).
Вариант 3: Контрольная сумма рассчитывается только для блока Appearance.
Вариант 4: Контрольная сумма рассчитывается только для блоков Age и Sex.
Appearance: декодируется по-разному в зависимости от Sex:
Male.
4 |
3 |
2 |
1 |
Profession |
Clothes style |
Profession:
0 – Plumber
1 – President
2 – Student
3 - Tutor
Clothes style:
0 – sport
1 – classic
2 – business
3 – hippie
Female.
4 |
3 |
2 |
1 |
Hair Length |
Clothes style |
Married |
Hair Length:
0 – short
1 – long
Clothes style:
0 – sport
1 – classic
2 – business
3 – hippie
Married:
0 – no
1 – yes