
- •Базові поняття програмування Програмування як наукова дисципліна і професійна діяльність
- •Архітектурні особливості сучасних еом Поняття архітектури комп’ютера
- •Класична структура комп’ютера
- •Технологія виконання команд мікропроцесором
- •Представлення інформація в пам’яті пк
- •Позиційні системи числення
- •Правила переведення чисел із однієї системи числення в іншу
- •Кодування числових даних
- •Кодування текстових даних
- •Кодування графічних даних
- •Кодування звукової інформації
- •Види програмного забезпечення пк Класифікація програмного забезпечення
- •Загальна характеристика операційних систем
Кодування числових даних
Числові данікодуються шляхом переводу їхв двійкову систему.
Представлення цілих чисел. Для представлення цілих чисел із знаками застосовуються
прямий,
обернений,
додатковий коди.
Додатні числа у прямому, оберненому та додатковому кодах записуються однаково, а саме двійковим кодом числа з цифрою 0 у знаковому розряді. Різниця між цими кодами має місце тільки при представленні від’ємних чисел.
Прямий кодвід’ємного числа відрізняється від прямого коду додатного числа тим, що значення його знакового розряду (старшого біта числа) дорівнює не 0, а 1. Наприклад, прямим кодом числа 5 є 0101, а числа 127 — 01111111; відповідно, прямий код числа –5 становить 1101, а код числа –127 записується як 11111111.
Обернений код від’ємного числа отримується із прямого коду шляхом замінийогоцифр наїхдоповнення до1. Код знаказберігаєтьсябез змін.
Заміна цифр їх доповненням для двійкової системи співпадає з операцією інверсії, тобто у всіх розрядах нулі потрібно замінити на 1, а одиниці — на 0. Наприклад, обернений код числа –5 записується як 1010, а код числа –127 — як 10000000.
Додатковий код від’ємного числа отримується із оберненого коду збільшенням на 1 його молодшого розряду. Прицьомупереносіз знакового розрядуігнорується.Наприклад, додатковий код числа –5 записується як 1011, а код числа –127 — як 10000001.
Додатні числа в ПК завжди представляються за допомогою прямого коду. Для представлення ж від’ємних чисел використовується додатковий код. Це пов'язано із спрощенням виконання арифметичних операцій.
Якби ПК обробляв прямі коди додатних і від’ємних чисел, то при виконанні арифметичних операцій слід було б виконувати ряд додаткових дій. Наприклад, при додаванні потрібно було б перевіряти знаки обох операндів і визначати знак результату: якщо знаки однакові, то обчислюється сума операндів і їй присвоюється той же знак; якщо ж знаки різні, то з більшого по абсолютній величині числа віднімається менше і результату присвоюється знак більшого числа. Тобто, при представленні чисел лише у прямого коді, операція додавання реалізується через досить складний алгоритм. Якщо ж від’ємні числа представляти додатковим кодом, то операція додавання, у тому числі і чисел із різними знаками, зводиться до їх порозрядного додавання.
Оскільки прямий код використовується майже виключно для представлення додатних чисел, а додатковий – для від’ємних, то майже завжди, якщо в першому розряді 1, то ми маємо справу із додатковим кодом (0 позначає додатне число, а 1 – від’ємне).
В залежності від розрядної сітки ПК, для збереження цілих чисел в ОП зазвичай використовується 1, 2 або 4 байти (8, 16 або 32 розряди відповідно).
Представлення цілих чисел. Для представлення дійсних чисел застосовується дві форми:
з фіксованою крапкою;
з плаваючою крапкою (нормальна форма, експоненціальна форма).
Числа з фіксованою крапкою. Це форма представлення числа з незмінним розташуванням крапки, що відокремлює цілу частину числа від дробової. Наприклад, -5.89; 0.73.
При машинному представленні числа у формі з фіксованою крапкою вказується знак числаійогомодуль. Формат представлення числа у формі з фіксованою крапкою:
Ціла частина числа із знаком |
Дробова частина |
| ||||||||
Знак |
qn-1 |
… |
q1 |
q0 |
q-1 |
q-2 |
… |
q-m | ||
|
n |
|
m |
Крапка фізично ніяк не вказується, вона лише мається на увазі.
Знак додатного числа кодується 0, від’ємного – 1.
Цяформавикористовуєтьсятакож для представлення цілих чисел.
Переваги: спрощена апаратна реалізація, менший час виконання машинних операцій.
Недоліки: невеликий діапазон представлення чисел, можливість переповнення розрядної сітки.
Числа з плаваючою крапкою. Число у формі з плаваючою крапкою (у нормалізованій формі) представляєтьсяувигляді добутку :
Х = m q р, де m - мантиса числа;
q -основа системи числення;
р -порядок (визначає положення крапки в числі).
У мантисі зберігаються значущі цифри числа, а порядок визначає його величину. Знак числа збігається зі знаком мантиси.
Ця формапредставлення числа неоднозначна, тому що передбачає плавання крапки:
73,28 = 73,28100= 7,328101 =0,7328102 =0,07328103 =732,810-1= ...
Для однозначностіпредставлення таких чисел використовуєтьсянормальна нормалізована форма, в якій положення крапки завжди задається перед значущою цифрою мантиси, тобто виконується умова:q -1 | m| < q 0 .
Формат представлення числа у нормальній формі :
Мантиса числа - m |
Порядок числа - р |
| |||||||||||
Знак m |
q-1 |
q-2 |
… |
q-r |
Знак p |
q |
… |
q1 |
q0 | ||||
|
|
|
|
|
|
|
|
|
| ||||
|
r |
|
s |
|
Точність обчислень при використанні формату з плаваючою крапкою визначається величиною r(збільшується із її збільшенням).
Частішеза все цейформатвикористовується для представленнядуже великих або дуже малих дійснихчисел.
Основною структурною одиницею збереження інформації в ПК є машинне слово. Машинне слово — машинозалежна (платформозалежна) величина, яка вимірюється в бітах або байтах, що дорівнює розрядності регістрів процесора і/або розрядності шини даних (зазвичай, деяка степінь двійки).
Як правило, в одному машинному слові може бути подане одне число або одна команда.
Для забезпечення необхідної точності обчислень і для економії пам’яті, ПК може оперувати також з подвійним словом, напівсловом. Співвідношення між ними представлені на схемі:
-
байт 0
байт 1
байт 2
байт 3
байт 4
байт 5
байт 6
байт 7
напівслово
напівслово
напівслово
напівслово
слово
слово
подвійне слово
В залежності від розрядної сітки ПК, для збереження цілих чисел в ОП зазвичай використовується 1, 2 або 4 байти (8, 16 або 32 розряди відповідно).