DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Звіт про виконання лабораторної роботи № 1 з дисципліни: Програмування, частина 3 (структури даних та алгоритми)

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Комп’ютерні науки
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2019
Тип роботи:
Лабораторна робота
Предмет:
Програмування Частина III Структури даних та алгоритми
Група:
КН-31
Коротко про документ

Про що ця робота

Досліджено внутрішнє представлення в пам'яті комп'ютера даних статичної структури. Проведено аналіз змінних різних типів та наведено результати виконання програми.

У роботі розглядаються

  • Програмування
  • Структури даних
  • Пам'ять комп'ютера
  • Типи даних
  • Специфікація програми
  • Арифметика вказівників

Зміст і розділи

  1. Мета
  2. Постановка задачі
  3. Система тестів
  4. Специфікація програми
  5. Результати виконання програми / висновок
Для кого:Студенти технічних спеціальностей та викладачі програми програмування і структур даних.
Викладачі:Кузьо М. М.

Ключові поняття

статичні даніпам'ять комп'ютералогічний типсимвольний типзнаковий типмантисаекспонентавказівник

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет „Львівська політехніка” Кафедра ЕОМ / Звіт про виконання лабораторної роботи №1 з дисципліни: “Програмування, частина 3 (Структури даних та алгоритми)” на тему:“ Внутрішнє представлення в пам’яті комп’ютера статичних даних ” Мета: дослідження внутрішнього представлення в пам’яті комп’ютера даних статичної структури. Постановка задачі Дослідити внутрішнє представлення в пам’яті комп’ютера даних статичної структури. Змінні, які потрібно проаналізувати : bool b = (7*5) % 10 * 8 = 28; signed char ch3 = ‘ n ’; long i6 = 7*352 = -2464; long double d2 = Z . X e + Y; d2 = 56.7e + 8; де X = 7, Y = 8; //(дата народження 07.08.1999) Система тестів 1) bool b = (7*5) % 10 * 8=28; Тип bool - логічний тип даних і у пам’яті комп’ютера він представляється одним байтом. Має два стани true або false. В даному випадку він буде мати значення true, так як цьому значенню відповідає значення змінної відмінне від нуля. Внутрішнє представлення змінної bool b в основній пам'яті: 01 2) signed char ch3 = ‘n’; Тип signed char - символьний тип даних, який дозволяє представляти символи у кодуванні за ASCII таблицею. В даному випадку це код символа ‘n’. Розмір змінної signed char ch3 1 байт Внутрішнє представлення змінної unsigned char ch3 в основній пам'яті: 6E 3) long i6 = 7*352= -2464 long – це знаковий чотирьохбайтовий тип даних, в якому значення зберігається у доповняльному коді. -246410 = - 1001 1010 00002 = -9А016; - в прямому коді в доповняльному -246410 = FF FF FF FF FF FF F6 60; Внутрішнє представлення змінної long i6 в пам'яті комп'ютера: 60 F6 FF FF FF FF FF FF 4)long double d2 = 56.7e + 8 = 56.7 * 108 = 5670000000; Переведемо число у 16 та 2 СЧ: 567000000010 = 151F5558016 ; 151F5558016 = 1 0101 0001 1111 0101 0101 0101 1000 00002; Необхідно визначити значення m (мантиса), s(знак) та e(експонента). s = 0, бо число додатне. Доповнимо число нулем: 1 0101 0001 1111 0101 0101 0101 1000 0000,02 Нормалізуємо число: 1, 1010 0011 1110 1010 1010 1011 0000 00002 * 10100000 Тип double займає ВПК 8 байт (64 біт) З них 11 біт виділяється під експоненту, 1 біт під знак числа і решта 52 під мантису. Знайдемо експоненту е = 102310 + 3210 = 105510 = 41F16 = 100 0001 1111 Зборка за схемою: 1біт 11 біт 52 біта  s e m  0 100 0001 1111 0101 0001 1111 0101 0101 0101 1000 0000 0000 0000 0000 0000 0000   100 0001 1111 0101 0001 1111 0101 0101 0101 1000 0000 0000 0000 0000 0000 00002 = 41F51F555800000016 Тепер для отримання значення числа ВПК, необхідно обернути його побайтно, бо ВПК числа типу double зберігаються у зворотньому порядку розміщення байт числа. Отже, ВПК (d2) – 00 00 00 58 55 1F F5 4116 Спеціфікація програми #include <iostream> #include<iomanip> using namespace std; int main() { bool b = 28; signed char ch3 = 'n'; long i6 = -2464; double d2 = 56.7e+8; unsigned char *vx = (unsigned char *)(&b); printf("Внутрiшнє придставлення змiнної b(bool): "); for (int i = 0;i<sizeof(b);i++) { printf("%02X ", vx[i]); } printf("\n"); vx = (unsigned char *)(&ch3); printf("Внутрiшнє придставлення змiнної ch3(signed char): "); for (int i = 0;i<sizeof(ch3);i++) { printf("%02X ", vx[i]); } printf("\n"); vx = (unsigned char *)(&i6); printf("Внутрiшнє придставлення змiнної i6(long): "); for (int i = 0;i<sizeof(i6);i++) { printf("%02X ", vx[i]); } printf("\n"); vx = (unsigned char *)(&d2); printf("Внутрiшнє придставлення змiнної d2(long double): "); for (int i = 0;i<sizeof(d2);i++) { printf("%02X ", vx[i]); } printf("\n"); return 0; } Результати виконання програми / Висновок: на даній лаборораторній роботі я дослідив внутрішнє представлення в пам’яті комп’ютера даних статичної структури.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!