Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Табл иця 1. 3.2 Представлення чисел в деяких системах числення
3. Стандарти представлення чисел зі знаком. Форма́ти да́них — сукупність регламентованих в архітектурі ЕОМ структур для представлення різних за специфікою обробки та представлення видів інформації (цілих чисел, дробових чисел, текстових рядків тощо). В ЕОМ інформація різного характеру представляється двійковими послідовностями з різним числом розрядів. Окремі частини цих послідовностей мають певні призначення, причому для фон-нейманівських машин ці призначення набувають сенсу тільки в контексті виконуваних команд. Поза цим контекстом і дані, і команди — усього лише послідовності двійкових розрядів, зовсім нерозрізнених за формою подання. Однак в якості операндів при виконанні команди, різні розряди цих послідовностей наділяються певним змістом. Тому говорять, що у фон-нейманівських машинах типи даних визначаються не самими даними, а операцією, що над ними виконується. І якщо, наприклад, в регістри-джерела операндів команди арифметичного додавання раптом виявилися завантажені розряди слова, яке містить якийсь текст, а не числа, то фон-нейманівська ЕОМ просто проігнорує ту обставину, що навряд чи має сенс додавати два текстові рядки, і поведетьтся з ними як з числами. Але це зовсім не зменшує важливості форматів даних у фон-нейманівских машинах, адже специфіка виконання тих чи інших машинних команд визначається тим форматом даних, над яким вони діють (інша справа, що фактичні операнди можуть не відповідати цьому форматові, але це вже на відповідальності програміста). Вся безліч операцій, а за ними й формати даних, можна розбити на дві великих групи: цілочисельні формати й формати для чисел із плаваючою комою. Цілочисельні формати Цілочисельні формати використовуються для представлення цілих чисел і інформації, що може бути закодована такими числами (наприклад, символьні дані, рядки бітів, булеві вирази й ін.). В першому випадку використовується зазвичай формат з урахуванням знака, що кодується, як правило, в старшому розряді, в другому випадку — беззнаковий формат. В іншому, номенклатура цілочисельних форматів різниться лише довжиною основного інформаційного поля. Як одиниця виміру довжини формату використовується слово, рівне двом або чотирьом байтам (залежно від архітектури). Як приклад, в таблиці 1.3.2 наведена номенклатура цілочисельних типів 64-розрядної архітектури SPARC v9. Основною характеристикою цілочисельних форматів при виконанні арифметичних операцій, є діапазон представлень чисел, що прямо залежить від розрядності формату: · для беззнакових форматів: 0≤i≤2b-1 · для форматів з врахуванням знаку: −2b-1≤i≤2b-1-1 Тут b — кількість інформаційних бітів в даному форматі.
Таблиця 1.3.2 .Номенклатура цілочисельних типів 64-розрядної архітектури SPARC v 9
Збільшення продуктивності ЕОМ викликане, зокрема, появою можливості оперувати з великими числами без необхідності розбивати їх на частини при завантаженні та проведенні операцій. Зважаючи на те, що в сучасних процесорах більшість цілочисельних операцій виконується над всіма розрядами числа одночасно, за один такт машинного часу, збільшення розрядності може привести до суттєвого прискорення. Однак це може спричинити необхідність адаптації існуючого програмного забезпечення, якщо при його написанні не враховувалося одне з найважливіших правил написання сумісного коду: відмова від застосування машинно-залежних типів даних. Зрозуміло, збільшення розрядності веде до ускладнення апаратури. Причому до досить істотного ускладнення. Залежність складності обчислювальних пристроїв від розрядності операцій — як правило, зовсім не лінійна, а в найкращому разі квадратична. В сфері фінансових і банківських обчислень, де точність є принциповою (але вона зовсім не залежить від діапазону представлення чисел), використовуються спеціалізовані двійково-десяткові формати подання цілочисельних даних. Необхідність використання двійково-десяткової арифметики пов'язана з виникаючими неоднозначностями при переведенні чисел із двійкової форми в десяткову, з якою ми маємо справу в повсякденному житті. Так, десяткове 0.1 не має цілого представлення у двійковій формі й перетворюється в нескінченний двійковий дріб. Це приводить, наприклад, до прикрих помилок округлення при проведенні банківських операцій. У двійково-десятковому форматі кожна десяткова цифра кодується двійковим кодом і числа записуються спеціальним чином. Для кодування однієї з 10 цифр використовується 4 двійкових розряди. |
Последнее изменение этой страницы: 2019-04-19; Просмотров: 277; Нарушение авторского права страницы