Представление информации в ЭВМ
Наиболее удобным средством представления информации, с точки зрения автоматизации процессов ее обработки, является язык чисел. Любой язык чисел определяется системой счисления. Система счисления – способ наименования и изображения чисел с помощью символов, имеющих определенные количественные значения.
Различают непозиционные и позиционные системы счисления. В непозиционной системе счисления цифры не меняют своего количественного значения при изменении их расположения в числе. Тем самым исключается всякая возможность автоматизации распознавания чисел и, как следствие, обработки информации. Этого недостатка лишена позиционная система счисления, в которой значение каждой цифры зависит от ее места (позиции) в числе. Позиционные системы счисления характеризуются:
· основанием Р системы счисления – количеством (Р) различных символов, используемых для изображения чисел. Значения этих символов лежат в пределах от 0 до Р-1;
· разрядом – позицией, занимаемой отдельным символом в изображении числа. Разряды нумеруются справа налево, начиная с 0;
· весом разряда – количественным значением одной единицы разряда. Численно вес разряда определяется через основание Р системы счисления и номер i разряда: Рi. Таким образом, максимальное целое число, которое может быть представлено в m разрядах – Nmax = Pm -1. Минимальное значащее (не равное 0) число, которое можно записать в s разрядах дробной части – Nmin = P-s. Тогда, имея в целой части числа m, а в дробной s разрядов, можно представить Pm+s чисел от 0 до Pm+s -1.
Поскольку в технике известно много физических приборов и сред с двумя устойчивыми состояниями, в качестве алфавита языка ЭВМ приняты символы 0 и 1, названные двоичными цифрами. Последовательности нулей и единиц конечной длины образуют двоичные числа, которые, в свою очередь, образуют позиционную двоичную систему счисления.
В вычислительных машинах применяются две формы представления двоичных чисел – естественная форма или форма с фиксированной запятой (точкой) и нормальная форма или форма с плавающей запятой (точкой).
В естественной форме положение в разрядной сетке (общее число разрядов, отведенное для представления чисел, с указанием местоположения каждого из них) запятой, отделяющей целую часть числа от дробной части, постоянно для всех чисел.
| |||||||
|
| ||||||
| |||||||
Рисунок 1
Машинное словоявляется структурной единицей информации ЭВМ. С помощью машинного слова записываются числа, символы и команды.
В современных ЭВМ длина машинных слов составляет 32 . . . 128 разрядов На рисунке 1 для упрощения показано слово длиной 16 разрядов (2 байта). Физически каждый разряд машинного слова представляет собой отдельный элемент памяти (триггер или запоминающий конденсатор).
Диапазон значащих чисел небольшой и при m-разрядной целой части и s-разрядной дробной части числа без учета знака составляет от P-s до Pm - P-s. Кроме того, если в результате операции получится число, выходящее за допустимый диапазон, происходит переполнение разрядной сетки, и дальнейшие вычисления теряют смысл. Следовательно, необходимо прогнозировать результаты обработки с целью соответствующего масштабирования исходных данных. По этим причинам естественная форма представления используется как вспомогательная и только для целых чисел.
В нормальной форме каждое число представляется как N = ±MP±R, где М – мантисса числа (|M|<1), R – порядок (целое число), Р – основание системы счисления. Абсолютное значение порядка определяет число разрядов, на которое смещена запятая, отделяющая целую часть числа от дробной части, а знак порядка – направление смещения этой запятой. Таким образом, с изменением значения порядка запятая меняет своё положение, как бы «плавает» в изображении числа. Диапазон значащих чисел весьма велик и при m-разрядной мантиссе и s-разрядном порядке (без учета знаков порядка и мантиссы) составляет от до (1- P-m) . В связи с этим нормальная форма представления является основной в современных ЭВМ.
В соответствии с двоичным представлением в информатике введены специальные единицы измерения объемов информации, хранимой или обрабатываемой в ЭВМ (табл. 1).
Последовательность нескольких битов или байтов часто называют полем данных. В ПК могут обрабатываться поля постоянной и переменной длины.
Таблица 1. Единицы измерения объемов данных
Кол. двоич. разрядов | 8×1024 (8×210) | 8×10242 (8×220) | 8×10243 (8×230) | 8×10244 (8×240) | |||
Ед. измерения | Бит | Байт | Параграф | Килобайт (Кбайт) | Мегабайт (Мбайт) | Гигабайт (Гбайт) | Терабайт (Тбайт) |
Поля постоянной длины могут быть следующих размеров (форматов):
· слово — 2 байта
· двойное слово — 4 байта
· полуслово — 1 байт
· расширенное слово — 8 байт
· слово длиной 10 байт — 10 байт
В полях постоянной длины числа с фиксированной запятой чаще всего имеют формат слова (рис.2 а) и полуслова и заполняют формат справа налево. Оставшиеся свободными старшие разряды формата заполняются нулями. В крайнем левом разряде формата отображается знак числа, при этом знак «+» кодируется нулем, а знак «-» – единицей.
Числа с плавающей запятой чаще всего имеют формат двойного (рис 2б) и расширенного слова. Порядок заполняет соответствующую часть формата справа налево, а мантисса – слева направо. Оставшиеся свободными младшие разряды мантиссы формата заполняются нулями.
Поля переменной длины могут иметь любой размер от 0 до 256 байт, но обязательно равный целому числу байтов.
Знак | Абсолютная величина числа | |||||
№ разряда | . . . |
а
Знак | Порядок числа | Мантисса числа | ||||||
№ разряда | . . . | . . . | ||||||
б
Рисунок 2 Структура формата слово со знаком для чисел
с фиксированной (а) и плавающей (б) запятой
Пример 1. Структурно запись числа -193(10) = -11000001(2) в разрядной сетке ПК выглядит следующим образом.
Число с фиксированной запятой формата слово со знаком:
Знак числа | Абсолютная величина числа | |||||||||||||||
N разряда | ||||||||||||||||
Число |
Числа с плавающей запятой Под знак и порядок отводится старший байт числа. Для возможности представления как положительного так и отрицательного порядка применяют смещенный порядок. То есть машинный порядок (Мр) представляют со смещением на 64. ( Мр=Р+64. ). Таким образом при машинном порядке равном нулю (0000000 В) реальный порядок равен -64, а при максимальном машинном порядке (1111111 В) равном 127, порядок равен +63.
Число с плавающей запятой формата двойное слово: -193(10) = -11000001(2) = -0.11000001*28. Здесь мантисса = -0.11000001, а порядок =1000(2).
Машинный порядок Мр=1000000(2)+ 1000(2) = 1001000(2).
Знак числа | Порядок 8 D = 1000 B | Мантисса 0.11000001 B | ||||||||||||||||||
N разряда | … | |||||||||||||||||||
Число |
При выполнении операций ввода-вывода данные часто представляются в двоично-десятичной системе счисления – когда каждая цифра десятичного числа отображается 4-разрядным двоичным числом. Двоично-десятичные числа представляются полями переменной длины в так называемых упакованном и распакованном форматах. В упакованном формате для каждой десятичной цифры отводится 4 двоичных разряда, при этом знак числа кодируется в крайнем правом полубайте (1100 – знак «+» и 1101 – знак «-»). Упакованный формат используется обычно в ПК при выполнении арифметических операций над двоично-десятичными числами. В распакованном формате для каждой десятичной цифры отводится байт, представляющий собой (кроме младшего байта) адрес соответствующей ячейки таблицы символов. В старшем полубайте адреса кодируется номер столбца, а в младшем – номер строки этой таблицы. Старший полубайт младшего (правого) байта используется для кодирования знака. Распакованный формат используется в ПК при вводе-выводе информации.
Двоично-десятичные кодированные числа могут быть представлены в ПК полями переменной длины в так называемых упакованном и распакованном форматах.
В упакованном формате для каждой десятичной цифры отводится по 4 двоичных разряда (полбайта), при этом знак числа кодируется в крайнем правом полубайте числа (1100 — знак "+" и 1101 — знак "-").
Структура поля двоично-десятичного упакованного формата:
Цф | Цф | ... | Цф | Знак |
Здесь и далее: Цф — цифра. Знак — знак числа
Упакованный формат используется обычно в ПК при выполнении операций сложения и вычитания двоично-десятичных чисел.
В распакованном формате для каждой десятичной цифры отводится по целому байту, при этом старшие полубайты (зона) каждого байта (кроме самого младшего) в ПК заполняются кодом 0011 (в соответствии с ASCII-кодом), а в младших (левых) полубайтах обычным образом кодируются десятичные цифры. Старший полубайт (зона) самого младшего (правого) байта используется для кодирования знака числа.
Структура поля распакованного формата:
Зона | Цф | Зона | Цф | ... | Зона | Цф | Знак | Цф |
Распакованный формат используется в ПК при вводе-выводе информации в ПК, а также при выполнении операций умножения и деления двоично-десятичных чисел.
Пример 3.Число -193(10) = -000110010011 (2-ю) в ПК будет представлено:
в упакованном формате —
в распакованном формате —
Дата добавления: 2015-08-08; просмотров: 2229;