
- •Курсова робота ( частина і )
- •Теоретична частина
- •2.1.4. Дійсний тип
- •2.2. Завдання 2. Внутрішні формати похідних типів
- •2.2.1. Представлення рядку символів в пам’яті комп’ютера.
- •2.2.2. Представлення перерахувань в пам’яті комп’ютера.
- •2.2.3. Представлення масивів в пам’яті комп’ютера.
- •2.2.4. Представлення структур в пам’яті комп’ютера.
- •2) Unsigned b:7;
- •2.2.5. Представлення об'єднань в пам’яті комп’ютера.
- •Double e;
- •2) Unsigned long c;
- •Алгоритм розв’язання задачі
- •Результат виконання программи
2.2.2. Представлення перерахувань в пам’яті комп’ютера.
enum color6 {
BLUE, // 0, бо не визначено (нема присвоєння значення змінній BLUE)
GREEN, // 1,(оскільки невизначено, то Green = BLUE + 1)
CYAN = -1, // -1, бо вказано (змінній CYAN присвоєно значення -1)
RED, // 0 , (оскільки невизначено, то RED = CYAN + 1)
BROWN, //1, (оскільки невизначено, то BROWN = RED + 1)
GRAY = -2, // -2, бо вказано(змінній GRAY присвоєно значення -2)
YELLOW, // -1, (оскільки невизначено, то YELLOW = GRAY+1)
WHІTE = 0, // 0, бо вказано (змінній WHITE присвоэно значення 0)
MAGENTA, // 1, (оскільки невизначено, то MAGENTA = WHITE +1)
LІGHTGRAY, // 2 (оскільки невизначено, то LIGHTGRAY = MAGENTA + 1)
DARKGRAY, // 3, (оскільки невизначено, то DARKGRAY=LIGHGRAY+1)
BLACK // 4, (оскільки невизначено, то BLACK = DARKGRAY + 1)
} c1= CYAN, //c1 = CYAN = -1;
c2= BROWN, //c2 = BROWN = 1;
c3= DARKGRAY; //c3 = DARKGRAY = 3;
ВПК c1: FF FF FF FF16
ВПК c2: 01 00 00 0016
ВПК c3: 03 00 00 0016
2.2.3. Представлення масивів в пам’яті комп’ютера.
wchar_t array10[][3][2] = {{1,123}, {23,'4', true}}
Для кожного варіанту виконати наступні переприсвоювання:
1-ий елемент масиву = 0*24 = 0;
2-ий елемент масиву = 6*24 = 144;
3-ий елемент масиву = 3*24 = 72;
4-ий елемент масиву = 1*24 = 24;
5-ий елемент масиву = 2*24 = 48;
6-ий елемент масиву = 3*24 = 72;
7-ий елемент масиву = 9*24 = 216 ;
8-ий елемент масиву = 9*24 = 216;
9-ий елемент масиву = 8*24 = 192;
10-й елемент масиву = 8*24 = 192;
Оскільки під час ініціалізації масиву в середині основних фігурних дужок знаходиться 2 пари другорядних, то розмірність масиву
array10[2][3][2].
До переприсвоєння згідно варіанту масив має вигляд:
23 |
‘4’ |
|
1 |
0 |
|
0 |
0 |
1 |
123 |
0 |
0 |
0 |
0 |
Виконуємо переприсвоєння:
1-ий елемент масиву = 0*24 = 0;
2-ий елемент масиву = 6*24 = 144;
3-ий елемент масиву = 3*24 = 72;
4-ий елемент масиву = 1*24 = 24;
5-ий елемент масиву = 2*24 = 48;
6-ий елемент масиву = 3*24 = 72;
7-ий елемент масиву = 9*24 = 216 ;
8-ий елемент масиву = 9*24 = 216;
9-ий елемент масиву = 8*24 = 192;
10-й елемент масиву = 8*24 = 192;
216 |
216 |
|
192 |
192 |
|
0 |
0 |
0 |
144 |
72 |
24 |
48 |
72 |
У 16 системі числення:
D8 |
D8 |
|
C0 |
C0 |
|
0 |
0 |
0 |
90 |
48 |
18 |
30 |
48 |
Оскільки тип масиву wchar_t, то і тип усіх елементів масиву також wchar_t, розмір якого 2 байтb.
Отже, ВПК16 = 00 00 90 00 48 00 18 00 30 00 48 00 D8 00 D8 00 C0 00 C0 00 00 00 00 00