Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Системы счисления и формы представления чисел
Информация в ЭВМ кодируется, как правило, в двоичной или в двоично-десятичной системе счисления. Система счисления – это способ наименования и изображения чисел с помощью символов, имеющих определенные количественные значения.
В зависимости от способа изображения чисел системы счисления делятся на позиционные и непозиционные. В позиционной системе счисления количественное значение каждой цифры зависит от ее места (позиции) в числе. В непозиционной системе счисления цифры не меняют своего количественного значения при изменении их расположения в числе. Количество (Р) различных цифр, используемых для изображения числа в позиционной системе счисления, называется основанием системы счисления. Значения цифр лежат в пределах от 0 до Р-1. В общем случае запись любого смешанного числа в системе счисления с основанием Р будет представлять собой ряд вида:
где нижние индексы определяют местоположение цифры в числе (разряд): § положительные значения индексов – для целой части числа (т разрядов); § отрицательные значения – для дробной (s разрядов), Пример 4.1. Позиционная система счисления – арабская десятичная система, в которой: основание Р=10, для изображения чисел используются 10 цифр (от 0 до 9). Непозиционная система счисления – римская, в которой для каждого числа используется специфическое сочетание символов (XIV, CXXVII и т.п.).
Максимальное целое число, которое может быть представлено в т разрядах:
Минимальное значащее (не равное 0) число, которое можно записать в s разрядах дробной части:
Имея в целой части числа т, а в дробной s разрядов, можно записать всего Р m+s разных чисел. Двоичная система счисления имеет основание Р=2 и использует для представления информации всего две цифры: 0 и 1. Существуют правила перевода чисел из одной системы счисления в другую, основанные в том числе и на соотношении (1).
Пример 4.2.
В вычислительных машинах применяются две формы представления двоичных чисел: § естественная форма или форма с фиксированной запятой (точкой); § нормальная форма или форма с плавающей запятой (точкой). С фиксированной запятой все числа изображаются в виде последовательности цифр с постоянным для всех чисел положением запятой, отделяющей целую часть от дробной. Пример 4.3. В десятичной системе счисления имеются 5 разрядов в целой части числа (до запятой) и 5 разрядов в дробной части числа (после запятой); числа, записанные в такую разрядную сетку, имеют вид: +00721, 35500; +00000, 00328; -10301, 20260.
Эта форма наиболее проста, естественна, но имеет небольшой диапазон представления чисел и поэтому не всегда приемлема при вычислениях. Пример 4.4. Диапазон значащих чисел (N) в системе счисления с основанием Р при наличии т разрядов в целой части и s разрядов в дробной части числа (без учета знака числа) будет: При Р = 2, m = 10 и s = 6: 0, 015 £ N £ 1024.
Если в результате операции получится число, выходящее за допустимый диапазон, происходит переполнение разрядной сетки, и дальнейшие вычисления теряют смысл. В современных ЭВМ естественная форма представления используется как вспомогательная и только для целых чисел. С плавающей запятой каждое число изображается в виде двух групп цифр. Первая группа цифр называется мантиссой, вторая – порядком, причем абсолютная величина мантиссы должна быть меньше 1, а порядок – целым числом. В общем виде число в форме с плавающей запятой может быть представлено так:
где М – мантисса числа r – порядок числа ( r – целое число); Р – основание системы счисления. Пример 4.5. Приведенные в примере 4.3 числа в нормальной форме запишутся так: +0, 721355*103; +0, 328*10-3; -0, 103012026* 105.
Нормальная форма представления имеет огромный диапазон отображения чисел и является основной в современных ЭВМ. Пример 4.6. Диапазон значащих чисел в системе счисления с основанием Р при наличии т разрядов у мантиссы и s разрядов у порядка (без учета знаковых разрядов порядка и мантиссы) будет:
При Р=2, т=10 и s=6 диапазон чисел простирается примерно от 10-19 до 1019.
Знак числа обычно кодируется двоичной цифрой, при этом код 0 означает знак " +", код 1 – знак " -". Примечание. Для алгебраического представления чисел (т.е. для представления положительных и отрицательных чисел) в машинах используются специальные коды: прямой, обратный и дополнительный. Причем два последних позволяют заменить неудобную для ЭВМ операцию вычитания на операцию сложения с отрицательным числом; дополнительный код обеспечивает более быстрое выполнение операций, поэтому в ЭВМ применяется чаще именно он. Двоично-десятичная система счисления получила большое распространение в современных ЭВМ ввиду легкости перевода в десятичную систему и обратно. Она используется там, где основное внимание уделяется не простоте технического построения машины, а удобству работы пользователя. В этой системе счисления все десятичные цифры отдельно кодируются четырьмя двоичными цифрами (табл. 4.1) и в таком виде записываются последовательно друг за другом.
Таблица 4.1. Таблица двоичных кодов десятичных и шестнадцатеричных цифр
Пример 4.7. Десятичное число 9703 в двоично-десятичной системе выглядит так: 1001011100000011.
При программировании иногда используется шестнадцатеричная система счисления, перевод чисел из которой в двоичную систему счисления весьма прост – выполняется поразрядно (полностью аналогично переводу из двоично-десятичной системы). Для изображения цифр, больших 9, в шестнадцатеричной системе счисления применяются буквы А = 10, В = 11, С = 12, D = 13, Е = 14, F = 15. Пример 4.8. Шестнадцатеричное число F17B в двоичной системе выглядит так: 1111000101111011. Варианты представления информации в ПК
Вся информация (данные) представлена в виде двоичных кодов. Дня удобства работы введены следующие термины, обозначающие совокупности двоичных разрядов (табл. 4.2). Эти термины обычно используются в качестве единиц измерения объемов информации, хранимой или обрабатываемой в ЭВМ.
Таблица 4.2. Двоичные совокупности
Последовательность нескольких битов или байтов часто называют полем данных. Биты в числе (в слове, в поле и т.п.) нумеруются справа налево, начиная с 0-го разряда. В ПК могут обрабатываться поля постоянной и переменной длины. Поля постоянной длины: слово – 2 байта двойное слово – 4 байта полуслово – 1 байт расширенное слово – 8 байт слово длиной 10 байт – 10 байт
Числа с фиксированной запятой чаще всего имеют формат слова и полуслова, числа с плавающей запятой – формат двойного и расширенного слова. Поля переменной длины могут иметь любой размер от 0 до 256 байт, но обязательно равный целому числу байтов. Пример 4.9. Структурно запись числа -193(10) = -11000001(2) в разрядной сетке ПК выглядит следующим образом. Число с фиксированной запятой формата слово со знаком:
Число с плавающей запятой формата двойное слово:
Двоично-кодированные десятичные числа могут быть представлены в ПК полями переменной длины в так называемых упакованном и распакованном форматах. В упакованном формате для каждой десятичной цифры отводится по 4 двоичных разряда (полбайта), при этом знак числа кодируется в крайнем правом полубайте числа (1100 – знак " +" и 1101 – знак " -" ). Структура поля упакованного формата:
Здесь и далее: Цф – цифра, Знак – знак числа. Упакованный формат используется обычно в ПК при выполнении операций сложения и вычитания двоично-десятичных чисел. В распакованном формате для каждой десятичной цифры отводится по целому байту, при этом старшие полубайты (зона) каждого байта (кроме самого младшего) в ПК заполняются кодом 0011 (в соответствии с ASCII-кодом), а в младших (левых) полубайтах обычным образом кодируются десятичные цифры. Старший полубайт (зона) самого младшего (правого) байта используется для кодирования знака числа. Структура поля распакованного формата: Распакованный формат используется в ПК при вводе-выводе информации в ПК, а также при выполнении операций умножения и деления двоично-десятичных чисел.
Коды ASCII
Распакованный формат представления двоично-десятичных чисел (иногда его называют " зонный" ) является следствием использования в ПК ASCII-кода для представления символьной информации. Код ASCII (American Standard Code for Information Interchange – Американский стандартный код для обмена информацией) имеет основной стандарт и его расширение (табл. 4.3). Основной стандарт для кодирования символов использует шестнадцатиричные коды 00 - 7F, расширение стандарта – 80 - FF. Основной стандарт является международным и используется для кодирования управляющих символов, цифр и букв латинского алфавита; в расширении стандарта кодируются символы псевдографики и буквы национального алфавита (естественно, в разных странах разные).
Таблица 4.3. Таблица кодов ASCII
Популярное:
|
Последнее изменение этой страницы: 2017-03-11; Просмотров: 1136; Нарушение авторского права страницы