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

Внутрішнє представлення цілих та дійсних чисел в пам’яті комп

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

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

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

Рік:
2013
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Інші

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

Міністерство освіти і науки України Національний університет „Львівська політехніка” Кафедра ЕОМ Звіт до лабораторної роботи №1 “Внутрішнє представлення цілих та дійсних чисел в пам’яті комп ” Варіант№15 Мета Роботи: Дослідити внутрішнє представлення цілих та дійсних чисел в пам’яті комп’ютера. 2. Постановка задачі Дослідити внутрішнє представлення змінної типу int для чисел 1515 та -1515 і змінної типу float для чисел 15,15 та -15,15. Опис алгоритму Створюємо вказівнк типу unsigned char на адреси змінних типу int та float. Далі в циклі, від 0 до об’єму, який займає змінна в пам’яті (кількості байтів ( комірок, які займає код числа)), виводимо на екран код числа, який представляємо в виді шістнадцяткового коду, побайтово, тобто кожен байт відповідає тетраді двійкового коду числа. Наведений алгоритм використовуємо для змінних типу int та float без змін. Текст програми main.c #include <stdio.h> #include <conio.h> int main (void) { int ifirst, isecond; float ffirst, fsecond; int i; unsigned char* pf=(unsigned char *)(&ifirst); unsigned char* ph=(unsigned char *)(&isecond); printf("Input first number by int:\n"); scanf("%d", &ifirst); for(i=0; i<sizeof(ifirst); i++) printf("%X", pf[i]); printf("\n"); printf("Input second number by int:\n"); scanf("%d", &isecond); for(i=0; i<sizeof(isecond); i++) printf("%X ", ph[i]); printf("\n"); /*-----------------------------------*/ printf("Input first number by float:\n"); scanf("%f", &ffirst); for(i=0; i<sizeof(ffirst); i++) printf("%X", pf[i]); printf("\n"); printf("Input second number by float:\n"); scanf("%f", &fsecond); for(i=0; i<sizeof(fsecond); i++) printf("%X ", ph[i]); printf("\n"); getch(); return 0; } Результати тестування Ручний розрахунок Int:1515 2 14  757 2 11 6 378 2 10 15 2 189 2 15 14 17 18 94 2 14 17 16 9 8 47 2 15 16 18 8 14 4 23 2 14 1 18 1 14 7 2 11 2 1 0 0 6 3 10 5 2 1 2 1 4 2 2 1 1 2 1 0 101 1110 1011 0000 0000 0000 0000 0000 0101 1110 1011 ВПК: 1110 1011 0000 0101 0000 0000 0000 0000 E B 0 5 0 0 0 0 Int 151510=EB 05 00 0016 Від’ємні знаходяться в доповняльному коді. 0000 0000 0000 0000 0000 0101 1110 1011 – Прямий код 1111 1111 1111 1111 1111 1010 0001 0100 – Обернений код 1111 1111 1111 1111 1111 1010 0001 0100 + 1 1111 1111 1111 1111 1111 1010 0001 0101 - Доповняльний код ВПК: 0001 0101 1111 1010 1111 1111 1111 1111 1 5 F A F F F F Int -151510=15 FA FF FF16 float: 15 2 14 7 2 1 6 3 2 1 2 1 1 1510=F16=11112 x0,15 x0,4 16 16 - Повтор. 2,4 6,4 0,1510 = 2616 = 0010 01102 15,1510 = F,2616 = 1111,0010 01102 1111, 0010 0110 0000 0000 0000 0000 0000 1,111 0010 0110 0000 0000 0000 0000 0000 e=12710+310=13010=8216=1000 00102 sem s=0 – число додатнє. e=1000 00102 m=111 0010 0110 0000 0000 00002 0100 0001 0111 0010 0110 0000 0000 0000 ВПК: 0000 0000 0110 0000 0111 0010 0100 0001 F F 6 0 7 2 4 1 Float 15,1510=0000 0000 0110 0000 1111 0110 0100 00002= FF 60 72 4116 s=1 - число від’мне. e=1000 00102 m=111 0010 0110 0000 0000 00002 1100 0001 0111 0010 0110 0000 0000 0000 ВПК: 0000 0000 0110 0000 0111 0010 1100 0001 F F 6 0 7 2 C 1 Float -15,1510=0000 0000 0110 0000 0111 0010 1100 00012= FF 60 72 C116 Результати виконання програм int: Input first number by int 1515 EB 05 00 00 Input second number by int -1515 15 FA FF FF Input first number by float 15,15 FF 60 72 41 Input second number by float -15,15 FF 60 72 C1 Висновок: На данній лабораторній робіті було досліджено внутрішнє представлення змінної типу int для чисел 1515 та -1515 і змінної типу float для чисел 15,15 та -15,15.
Антиботан аватар за замовчуванням

31.03.2013 13:45

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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