DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

Лабораторна робота №1 Програмування, ч3

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

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКТА
Факультет:
Не вказано
Кафедра:
Кафедра ЕПМС

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

Рік:
2019
Тип роботи:
Лабораторна робота
Предмет:
Програмування алгоритмів цифрової обробки сигналів та зображень

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

Міністерство освіти і науки України Національний університет «Львівська політехніка» Кафедра ЕОМ / Звіт до лабораторної роботи № 1 з дисципліни «Програмування, частина 3 (Структури даних та алгоритми)» на тему: «Подання в пам’яті комп’ютера статичних даних базових типів» Варіант № 5,0 1. МЕТА РОБОТИ Дослідження внутрішнього подання в пам’яті комп’ютера базових типів даних статичної структури. 2. ПОСТАНОВКА ЗАДАЧІ 2.1 ррррррррр, 23.05.1999 2.2 Дослідити внутрішнє подання в пам’яті комп’ютера даних статичної структури. Назви змінних для дослідження згідно варіанту: b,ch1,i5,d3 bool b = (день народження * 5) % 10 * місяць народження; ch1 = перша літера прізвища (велика); i5 = день народження * 352 ; d3 = – Z . X e Y, де: X–день народження, Y–місяць народження, Z=X*Y; 3. АЛГОРИТМ РОЗВ’ЯЗАННЯ ЗАДАЧІ Для дослідження внутрішнього подання в пам’яті комп’ютера базових типів даних статичної структури нам необхідно розробити програму що буде демонструвати внутрішнє подання пам’яті що виділена під досліджуванні змінні. Алгоритм розв’язання задачі: 1. Взяти дані за адресою досліджуваної змінної та перетворити їх у символьний масив; 2. Вивести отримані дані у шістнадцятковому форматі; 3. Перевірити вихідні дані (Рис. 1.) програми (Додаток А) з ручними розрахунками. 4. СИСТЕМА ТЕСТІВ 4.1. Завдання 1 Досліджувана змінна - bool b. Очікуваний результат: (23 * 5) % 10 * 5 = 115 % 50 = 1510 ≈ 1 (true) Кількість байт що виділяється під тип bool – 1, відповідно подання в памяті компютера – 01. 4.2. Завдання 2 Досліджувана змінна - char ch1 Очікуваний результат: ‘N’ в таблиці SCII має номер 7810 = 4Е16 Кількість байт що виділяється під тип char – 1, відповідно подання в памяті компютера – 4Е 4.3. Завдання 3 Досліджувана змінна - unsigned long i5 Очікуваний результат: 23 * 352 = 809610 = 1FA016 Кількість байт що виділяється під тип unsigned long – 8 (в 64х бітній Linux системі), відповідно подання в памяті компютера– 00 00 00 00 00 00 1F A0 4.4.. Завдання 4 Досліджувана змінна - long double d3 Очікуваний результат: -(23 * 5 + 0.23) * 10^5 = -115.23 * 10^5 = = -1152300010 = … FF502C4816 Кількість байт що виділяється під тип long double - 10, відповідно подання в памяті компютера – FF FF FF FF FF FF FF 50 2C 48. 5. РЕЗУЛЬТАТИ ВИКОНАННЯ ПРОГРАМИ Рис. 1. Результати виконання програми Висновок: виконуючи лабораторну роботу дослідив внутрішнє подання в пам’яті комп’ютера базових типів даних статичної структури. Додаток А #include<stdio.h> #include<math.h> template<typename T> void showInMemory(T data) { unsigned char *vx=(unsigned char *)(&data); for (int i=sizeof data;i>0;i--) printf("%02X ",vx[i-1]); printf("\n"); } void func(int birthDate, int birthMonth){ bool b = (bool)((birthDate*5)%10*birthMonth); char ch1 = 'N'; unsigned long i5 = (unsigned long)(birthDate*352); long double intDef = birthDate*birthMonth; long double doubleDef = (long double)birthDate/100; long double d3 = -1*(intDef+doubleDef)*((long double)pow(10, birthMonth)); showInMemory(b); showInMemory(ch1); showInMemory(i5); showInMemory(d3); } int main (void){ func(23,5); }
Антиботан аватар за замовчуванням

28.05.2019 17:45

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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