Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки УкраїниНаціональний технічний університет України
«Київський політехнічний інститут ім. І. Сікорського»
Кафедра автоматизації проектування енергетичних процесів і систем
Лабораторна робота №1
з дисципліни «Операційні системи»
«Внутрішнє представлення цілочисельних даних в IBM PC»
Варіант 20
Мета роботи. Виконати переведення чисел, наданих викладачем, з десяткової у двійкову систему числення. Надати їх внутрішньомашинне представлення відповідно до діапазону знакових та беззнакових форматів типів чисел. Машинне представлення даних необхідно надати у двійковій та шістнадцятирічній системі числення.
Коротка теоретична частина
Загальноприйнята форма запису числа являє собою скорочену форму запису розкладання по ступенях основи системи числення, наприклад:
13067810=1*105+3*104+0*103+6*102+7*101+8*100
Загальна формула надання чисел у позиційної системі числення :
D = n0*m0+ n1*m1+ n2*m2+. . . + nk*mk ( 1)
D – числове дане
n - цифра на позиції і у числі
m - основа системи числення (2, 8, 10, 16)
Десяткове представлення позначається d – Decimal, двійкове – b (Binary), шістнадцятирічне – h (Hexadecimal).
Програми і дані в комп'ютері зберігаються у двійкової системі числення. Для позначення адрес розміщення даних у оперативній пам'яті використовується шістнадцятирічне представлення чисел.
При переведенні у десяткову систему числення потрібно число розкласти по ступенях основи системи числення.
Із шістнадцятирічної у десяткову:
(ак ак-1 а1 а0)16 = ак *16 к + ак-1 * 16 к-1 + ...+а1 *16 +а0
92C816=9*16103+2*16102+12*16101+8*16100=9*4096+2*256+12*16 +8=36864 +512+192 +8=3757610
Із восьмирічної в десяткову:
(ак ак-1 а1 а0)8 = ак *8 к + ак-1 * 8 к-1 + ...+а1 *8 +а0
7358=7*8102+3*8101+5*8100=7*64+3*8+5*1=448+24+5=47710
Із двійкової у десяткову:
1101001012=1*2108+1*2107+0*2106+1*2105+ 0*2104+0*2103+1*2102+0*2101+ 1*2100= 256+128+0+32+0+0+4+0+1=42110
Для переведення чисел з системи числення з основою p у систему числення з основою q з використанням арифметики старої системи числення з основою p потрібно:
Для переведення цілої частини:
Послідовно число, записане в системі з основою p, слід ділити на основу нової системи числення, виділяючи залишок. Останні (числа залишку), записані в зворотному порядку, будуть утворювати число в новій системі числення;
Для переведення дробової частини:
Послідовно дробову частину слід множити на основу нової системи числення, виділяючи цілі частини, які і будуть утворювати запис дробової частини числа в новій системі числення.
Представлення чисел у десятковій, двійковій, шістнадцятирічній системі
Decimal, d
Binary, b
Hexadecimal, h
0
0000
0
1
0001
1
2
0010
2
3
0011
3
4
0100
4
5
0101
5
6
0110
6
7
0111
7
8
1000
8
9
1001
9
10
1010
A
11
1011
B
12
1100
C
13
1101
D
14
1110
E
15
1111
F
Зв’язок між двійковою і шістнадцятирічною системою – 24 , тобто 16-річне число можна представити чотирма двійковими розрядами.
Від’ємні числа зберігаються у зворотному додатковому коді
Додатковий код – це таке число, яке треба додати до даного числа для одержання 0 у всіх його розрядах й 1 у розряді ліворуч від самого старшого
Переведення у двійкову систему числення
Цілочисельні типи даних, їх діапазони значень та кількість пам’яті, яку вони потребують:
Тип
Діапазони значень
Необхідна пам’ять
Byte
0 - 255 28 - беззнакові
1 byte
Shortint
-128 - 127 (28 / 2) знакові
1 byte
Word
0 - 65535 216 беззнакові
2 bytes
Integer
-32768 – 32767 (216 / 2) знакові
2 bytes
Longint
-2 147 483 748 - 2 147 483 747 (232 / 2) знакові
4 bytes
Директиви асемблера для задання простих типів даних
Довжина (біт)
Ініціалізація
Опис
8
DB(Define Byte) – визначити байт
BYTE
16
DW(Define Word) – визначити слово (2 байти)
WORD
32
DD(Define Double Word) – визначити подвійне слово (4 байти)
DWORD
64
DQ(Define Quarter Word) – визначити зчетверене слово (8 байт)
QWORD
80
DT(Define Ten Bytes) – визначити 10 байтів (80-бітні типи даних, що використовуються FPU).
TBYTE
За 20 варіантом було отримано такі дані:
2025 + 20 = 2045
2025 – 20 = 2005
-2025 + 20 = -2005
-2025 – 20 = -2045
217 + 20 = 237
217 – 20 = 197
-217 + 20 = -197
-217 – 20 = -237
Переведення у двійкову систему
/
/
2045 = 0000.0111.1111.1101
2005 = 0000.0111.1101.0101
-2005 = 1111.1000.0010.1011
-2045 = 1111.1000.0000.0011
237 = 1110.1101
197 = 1100.0101
-197 = 1111.1111.0011.1011
-237 = 1111.1111.0001.0011
Переведення у шістнадцяткову систему
2045 = 07FD
2005 = 07D5
-2005 = F82B
-2045 = F803
237 = ED
197 = C5
-197 = FF3B
-237 = FF13
Машинне представлення заданих чисел
Dec
Byte
Word
Bin
Hex
Bin
Hex
237
1110.1101
ED
0000.0000.1110.1101
00ED
197
1100.0101
C5
0000.0000.1100.0101
00C5
-197
1111.1111.0011.1011
FF3B
-237
1111.1111.0001.0011
FF13
2045
0000.0111.1111.1101
07FD
2005
0000.0111.1101.0101
07D5
-2005
1111.1000.0010.1011
F82B
-2045
1111.1000.0000.0011
F803
Завдання 1
Створити у блокноті файл з назвою прізвища з розширенням asm. У цей файл додати дані розміром байт та слово. Створити лістинг програми. Переглянути та проаналізувати програму *.lst на предмет відповідності опису типу даних, роздрукувати і додати до звіту. Якщо є помилки у типі даних, виділити їх напівжирним накресленням.
/
Лістинг
/
/
/
Висновок
У процесі виконання лабораторної роботи було переведено числа з десяткової системи у двійкову і шістнадцяткову, а також отримано їх внутрішньомашинне представлення. Правильність обчислень було перевірено за допомогою лістингу.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!