КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Як представляються в комп’ютері числа зі знаком?
Типи даних, якими оперує комп’ютер В сучасній обчислювальній техніці інформація кодується за допомогою послідовностей сигналів всього двох видів: намагнічено чи не намагнічено, включено чи виключено, висока чи низька напруга і т.д.. Прийнято позначати один стан цифрою нуль, а другий – цифрою 1. Таке кодування називається двійковим [1]. Біт – (англ. bit – binary digit – двійкова цифра) 0 або1. При двійковому кодуванні текстової інформації кожному символу відповідає його код – послідовність із фіксованої кількості нулів і одиниць. В більшості сучасних ЕОМ кожному символу відповідає послідовність із 8 нулів і одиниць. Байт – це вісім послідовно розміщених бітів, пронумерованих від 0 до 7, при цьому біт 0 є самим молодим значущим бітом. Всього існує 256 різних символів, наприклад великі і малі букви кирилиці і латиниці, цифри, розділові знаки і т.д.. Відповідність байтів і символів задається за допомогою таблиці, в якій для кожного коду вказується відповідний символ. Слово – послідовність з двох байт, які мають послідовні адреса. Розмір слова 16 біт; біти в слові нумеруються від 0 до 15. Байт, який вміщує нульовий біт, називається молодшим байтом, а байт, який вміщує 15 біт – старшим байтом. Подвійне слово – послідовність з чотирьох байт (32 біта), які розміщені по послідовним адресам. Нумерація цих бітів проводиться від 0 до 31. Слово, яке вміщує нульовий біт, називається молодшим словом, слово, яке вміщує 31-ий біт – старшим словом. Так поділяються типи даних з точки зору розмірності. Але комп’ютер може підтримувати логічну інтерпретацію цих типів. Цілий тип зі знаком – двійкове значення зі знаком, розміром 8, 16 або 32 біта. Знак в цьому двійковому числі розміщується в 7-му, 15-му або 31-му біті, відповідно. Нуль в цих бітах в операндах відповідає додатному числу, а одиниця – від’ємному. Від’ємні числа представляються у додатковому коді. Числові діапазони для цього типу даних наступні: 8-розрядне ціле – від –128 до +127 16-розрядне ціле - від -32768 до +32767 32-розрядне ціле - від -231 до +231-1 Цілий тип без знаку – двійкове значення без знаку, розміром 8, 16 або 32 біта. Числовий діапазон для цього типу наступний Байт – від 0 до 255 Слово – від 0 до 65535 Подвійне слово – від 0 до 232-1 Додатні цілі зі знаком – це 0 і всі додатні числа. Від’ємні цілі зі знаком – це всі числа менші за 0. Ознакою числа зі знаком є особливе трактування старшого біта поля, який представляє число. В якості поля можуть виступати байт, слово або подвійне слово. Звичайно, що фізично цей біт нічим не відрізняється від інших – все залежить від команди, яка працює з даним полем. Якщо в її алгоритмі закладена робота з цілими числами зі знаком, то вона буде по особливому трактувати старший біт поля. У випадку, якщо біт рівний нулю, число рахується додатнім і його значення обчислюється по правилам, які ми розглянули вище. У випадку, якщо цей біт рівний 1 – число рахується від’ємним, і передбачається, що воно записано у так званому додатковому коді. Додатковий код деякого від’ємного числа представляє собою результат інвертування (заміни 1 на 0 і навпаки) кожного біта двійкового числа, рівного модулю початкового від’ємного числа плюс одиниця. Наприклад, розглянемо десяткове число мінус 185. Модуль цього числа в двійковому вигляді рівний 10111001. Спочатку потрібно доповнити це значення зліва нулями до потрібного розміру – байта, слова і т.д.. У нашому випадку доповнити треба до слова, так як діапазон представлення знакових чисел в байті складає мінус128...+127.Наступна дія – отримати двійкове доповнення. Для цього всі розряди двійкового числа треба інвертувати: 0000 0000 1011 1001→1111 1111 0100 0110 Тепер додаємо одиницю: 1111 1111 0100 0110 + 0000 0000 0000 0001 = 1111 1111 0100 0111 Саме так представляється число мінус 185 в комп’ютері. При роботі з числами зі знаком від вас напевно буде необхідно вміння виконувати зворотні дії – маючи двійкове доповнення числа, визначити значення його модуля. Для цього необхідно виконати дві дії: – виконати інвертування бітів двійкового доповнення. – до отриманого двійкового числа додати двійкову одиницю. Для прикладу, визначити модуль двійкового представлення числа мінус185 = 1111 1111 0100 0111: 1111 1111 0100 0111→інвертуємо біти→0000 0000 1011 1000 Додаємо двійкову одиницю: 0000 0000 1011 1000 + 0000 0000 0000 0001 = 0000 0000 1011 1001 = |-185| Оскільки в двійковій системі використовуються два символи, вона має основу 2. При розгляді числової послідовності в двійковій системі (див.табл.1.1) бачимо, що вона має таке ж схематичне вираження, як і в десятковій системі. Отже, можна використовувати ті ж арифметичні операції, що і в десятковій системі числення. Правила виконання арифметичних операцій приведені в таблиці 1.2
Таблиця 1.2 - Основні арифметичні операції у двійковій системі числення
Додавання і віднімання, множення і ділення двійкових чисел виконується так само, як і в інших позиційних системах числення, наприклад десятковій. Точно так само виконується зичення і перенос із старшого розряду (або в старший розряд) (табл.1.3). Віднімання в двійковій системі зручно проводити також шляхом сумування з використанням додаткового коду (табл.1.4).
Таблиця 1.3 - Приклади основних арифметичних операцій у двійковій системі числення.
Ділення
Віднімання з додатковим кодом (1011 – 0101): Інвертуємо число 0101 ® 1010 Додаємо до 1011 інвертоване число
Таблиця 1.4 - Приклад віднімання з додатковим кодом у двійковій системі числення.
Таблиця 1.5 - Степені двійки
Дата добавления: 2014-11-25; Просмотров: 693; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |