Міністерство освіти і науки України
Національний технічний університет України
«Київський політехнічний інститут імені Ігоря Сікорського»
Теплоенергетичний факультет
Кафедра автоматизації проектування енергетичних процесів і систем
Звіт
до лабараторної роботи №1
з дисципліни «Операційні системи»
Тема «Внутрішнє представлення цілочисельних даних в IBM PC»
Варіант 12
КИЇВ-2022
Мета роботи
Обчислити цілі числа, видані викладачем, перевести з десяткової системи числення у двікову і шістнадцяткову. Отримати їх внутрішньомашинне представлення. Перевірити правильність викладок, отримати лістинг з даними свого варіанту.
Короткий теоретичний опис
Загальноприйнята форма запису числа являє собою скорочену форму запису розкладання по ступенях основи системи счислення. Загальна формула надання чисел у позиційної системі числення :
D = n0*m0+ n1*m1+ n2*m2+. . . + nk*mk ( 1)
D – числове дане
n - цифра на позиції і у числі
m - основа системи числення (2, 8, 10, 16).
Для переведення чисел з системи счислення з основою p у систему счислення з основою q з використанням арифметики старої системи счислення з основою p потрібно:
• для переведення цілої частини:
o послідовно число, записане в системі з основою 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
Цілочисельні типи даних, їх діапазони значень та кількість пам’яті, яку вони потребують
Тип
Діапазони значень
Необхідна пам’ять
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
Числовий діапазон беззнакових чисел наступний:
• байт — від 0 до 255; (28) або 00h – FFh → 1111 1111b →255d
• слово — від 0 до 65 535; (216) або 0000h – FFFFh → 1111 1111 1111 1111b
• подвійне слово — від 0 до 232 - 1. (4 294 967 295)
або 0000 0000h – FFFF FFFFh → 1111 1111 1111 1111 1111 1111 1111 1111b
Директиви асемблера для задання простих типів даних
Довжина (біт)
Ініціалізація
Опис
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
Виведення чисел
217 + 12 = 229
-229
217 – 12 = 205
-205
2025 + 12 = 2037
-2037
2025 – 12 = 2013
-2013
Переведення цілих чисел в двійкову і шістнадцяткову системи
/
/
/
/
Внутрішньомашинне представлення чисел
Dec
Byte
Word
Bin
Hex
Bin
Hex
229
1110.0101
E5
0000.0000.1110.0101
00E5
-229
1111.1111.0001.1011
FF1B
205
1100.1101
CD
0000.0000.1100.1101
00CD
-205
1111.1111.0011.0011.
FF33
2037
0000.0111.1111.0101
07F5
-2037
1111.1000.0000.1011
F80B
2013
0000.0111.1101.1101
07DD
-2013
1111.1000.0010.0011
F823
Завдання 1
Створити у блокноті файл з назвою прізвища з розширенням asm. У цей файл додати дані розміром байт та слово. Створити лістинг програми. Переглянути та проаналізувати програму *.lst на предмет відповідності опису типу даних, роздрукувати і додати до звіту. Якщо є помилки у типі даних, виділити їх напівжирним накресленням.
Результати перевірки
/
Результати лістингу
/
/
/
Завдання 2
Створити у блокноті файл «Повні дані Прізвище» (файл dani.asm). У файлі dani.asm видалити символ коментаря « ; », запустити на трансляцію та уважно проаналізувати внутрішньомашинне представлення різних значень даних та їх типів, віднайти дані з невірним типом даних та виділити їх напівжирним накресленням.
Результати перевірки
/
Результати лістингу
/
/
/
/
/
Виділення помилок
.MODEL tiny
.data
k db -8
db -10
dw -10
db 15
db -15
db 0feh
db 0b12h
db 01100110b
dw 10001011b
dw 13
dw '0f'
dw 0245h
dw 0101b
dw 0a32h
dw 0f45h
dw 55
dw 0c47h
dw 0afh
dd 4, 8, 0Ah, 0ffh
dw -15
db -16
dw -16
r db 127
q db -127
t1 dw -127
db 128
i db -128
i1 dw -1228
w db -129
p dw -129
db 255
db -255
db 256
dw 256
q dw -32768
rr1 df -32768
zz1 dd -32768
j dw 32767
a dw 65535
dw -65535
dd -65535
dd -2147583648
dd 2147583647
dq -2147583648
dq 2147583647
ll dw 10101000b
ff db 12, "№", 0b12h
f1 dw 12, "№", 0b12h
g5 db 0101b
ss dw 00000101b
xx dq 26
c1 dw 0f45h, 55, 66
a1 db -113
a2 dw -113
ii db -159
i11 dw -159
s1 db -89
ss5 dw -89
s2 db -92
ff2 dw -92
s3 dw -231
a11 db "sigma"
a22 dw e301h
a33 db 12
a55 dw offset a11
a66 dw 13
gg dw -123
hh dw -9
end
Висновок
В ході виконання даної лабораторної роботи було здійснено переведення чисел з десяткової системи у двійкову і шістнадцяткову ,отримано їх внутрішньомашинне представлення . Правильність обчислень можна звірити за допомогою лістингу. Також, проаналізовано помилки, які виникають, якщо прибрати знак коментаря « ; ».