Міністерство освіти і науки УкраїниНаціональний технічний університет України
«Київський політехнічний інститут ім. І. Сікорського»
Кафедра автоматизації проектування енергетичних процесів і систем
Лабораторна робота №1
з дисципліни «Операційні системи»
«Внутрішнє представлення цілочисельних даних в IBM PC»
Лабораторна робота №1
Мета роботи. Виконати переведення чисел, наданих викладачем, з десяткової у двійкову систему числення. Надати їх внутрішньомашинне представлення відповідно до діапазону знакових та беззнакових форматів типів чисел. Машинне представлення даних необхідно надати у двійковій та шістнадцятирічній системі числення.
Теоретична частина.
Система числення- це правила запису чисел за допомогою спеціальних знаків - цифр, а також відповідні правила виконання дій з цими числами.
Поширені системи числень
Двійкова система числення - це позиційна система числення, база якої дорівнює двом та використовує для запису чисел тільки два символи: зазвичай 0 та 1.
Вісімкова система числення - позиційна цілочисельна система числення з основою 8. Для представлення чисел в ній використовуються цифри від 0 до 7. Десяткова система числення— це позиційна система числення із основою 10. Кожне число в якій записується за допомогою 10-ти символів, цифр — 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
Шістнадцяткова система числення — це позиційна система числення з основою 16. Тобто кожне число в ній записується за допомогою 16 символів. Арабські цифри від 0 до 9 відповідають значенням від нуля до дев'яти, а 6 літер латинської абетки A, B, C, D, E, F відповідають значенням від десяти до п'ятнадцяти.
Завдання 1: обчислення цілих чисел для свого варіанту.
1) 2025 + порядковий номер;
2) -2025 + порядковий номер;
3) 217 + порядковий номер;
4) -217 + порядковий номер.
Порядковий номер: 16.
Отримуємо числа: 2041, 2009, -2041, -2009, 233, 201, -233, -201.
Завдання 2: переведення їх з десяткової у двійкову (або шістнадцятирічну) систему счислення.
/
/
Машинне представлення заданих чисел
Dec
Byte
Word
Bin
Hex
Bin
Hex
2041
0000 0111 1111 1001
07F9
-2041
1111 1000 0000 0111
F807
2009
0000 0111 1101 1001
07D9
-2009
1111 1000 0010 0111
F827
233
1110 1001
E9
0000 0000 1110 1001
00E9
-233
0001 0111
17
1111 1111 0001 0111
FF17
201
1100 1001
C9
0000 0000 1100 1001
00C9
-201
0011 0111
37
1111 1111 0011 0111
FF37
Завдання 3: отримання їх внутрішньомашинне представлення.
Створення у Блокноті файлу з назвою прізвища з розширенням asm. У цей файл додати дані за варіантом розміром байт та слово.
/
Змонтовано локальний диск, та запущено файл у досі:
/
Лістинг:
/
/
Завдання 4: Створити у Блокноті файл «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 -128
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
Висновок:
Під час виконання даної лабораторної роботи було виконано переведення знайдених за варіантом десяткових чисел в двійкову та шістнадцяткову систему числення. Було ознайомлено з Notepad++, де було створено файл khav.asm, з написаним кодом. За допомогою DOS було створено лістинг, який було проаналізовано та перевірено правильність з попереднім ручним переведенням. Помилок знайдено не було. Було створено файл dani.asm та запущено на трансляцію, проаналізовано внутрішньомашинне представлення різних значень даних та їх типів. Знайдено помилки, дані з невірним типом даних, та виділено їх. Зроблено звіт з лабораторної роботи та вчасно надіслано викладачу на перевірку.