Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

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

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

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

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

Рік:
2007
Тип роботи:
Лабораторна робота
Предмет:
Організація та функціонування комп’ютерів
Група:
КІ-1
Варіант:
15

Частина тексту файла

Міністерство освіти і науки України Національний університет „Львівська політехніка” Кафедра ЕОМ Звіт до лабораторної роботи №1 “Внутрішнє представлення цілих та дійсних чисел в пам’яті комп ” Варіант№15 Виконав: ст.гр. КІ-1 Львів 2007 Мета Роботи: Дослідити внутрішнє представлення цілих та дійсних чисел в пам’яті комп’ютера. 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 Висновок: На данній лабораторній робіті було досліджено внутрішнє предс...
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

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

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

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

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

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини