Машинные способы представления информации

2.3. Машинное представление информации

Информацию, представленную в виде, пригодном для её автоматизированной обработки, называют данными.

В цифровых устройствах данные представляются в двоично-кодированной форме. Основными структурными единицами данных являются: бит, поле, байт, слово.

Бит (сокращение от англ. binary digit – двоичная цифра) – это такое количество информации, которое может быть записано в одном разряде разрядной сетки, например 0 или 1.

Последовательность битов, имеющая определённый смысл, называется полем (поле кода операции, поле адреса и т. д.).

Поле, состоящее из 8 битов, называется байтом (от англ. byte – слог, часть). Байт в цифровой технике используется для представления и записи любого символа, а также является наименьшей адресуемой единицей для записи и хранения данных в запоминающих устройствах. На основе байтов строятся любые другие укрупнённые единицы данных (слово – 2 байта, двойное слово – 4 байта, учетверённое слово – 8 байт, килобайт – 2 10  10 3 байт, мегабайт – 2 20  10 6 байт, гигабайт – 2 30  10 9 байт, терабайт – 2 40  10 12 байт).

Словом называется последовательность, состоящая из строго определённого числа байтов, принятого для данного цифрового устройства.

— тетрада или полубайт или ниббл

2.3.1 Формы представления чисел.

На основе принятой структуры разнообразные данные организуются в соответствии со следующими форматами:

а) числовые данные с фиксированной точкой делятся на беззнаковые (например, адреса памяти) и обычные числа со знаком. Каждый тип данных может быть представлен в четырёх форматах: наименьшем (один байт), коротком (одно слово), среднем (двойное слово), длинном (учетверённое слово);

б) для числовых данных с плавающей точкой используется три формата: короткий (4 байта, из них мантисса со знаком – 3 байта, порядок со знаком – 1 байт), средний (8 байт, из них мантисса со знаком – 53 бит, порядок со знаком – 11 бит), длинный (10 байт, из них мантисса со знаком – 65 бит, порядок со знаком – 15 бит);

в) для представления двоично-десятичных данных (BCD) применяется два формата: упакованный и неупакованный;

В упакованном формате в каждом байте размещаются две десятичные цифры. Для знака отводится старшая тетрада дополнительного старшего байта (для положительных чисел – 1100, для отрицательных – 1101). Упакованный формат используется для выполнения арифметических операций.

В неупакованном формате десятичные цифры кодируются в соответствии с американским стандартным кодом обмена информацией ASCII. При этом в каждом байте (в младшей тетраде) размещается только одна десятичная цифра, а в старшей тетраде записывается 0011 (в соответствии с кодом ASCII). Для знака числа отводится старший байт (для положительных чисел – 2BH, для отрицательных – 2DH). Неупакованный формат используется для обмена двоично-десятичными данными между процессором и внешними устройствами;

г) для представления и отработки текстовой информации используются специальные информационные структуры переменного формата – строки. Строка представляет непрерывную последовательность битов, байтов, слов или двойных слов. Битовая строка может быть длиной до 1 Гбита, а длина остальных строк может достигать 4 Гбайт.

Существуют две основные формы представления чисел, которые используются для обработки в цифровых устройствах:

— числа с фиксированной запятой (точкой);

— числа с плавающей запятой (точкой).

Числа с фиксированной запятой могут быть целыми, если запятая зафиксирована справа от младшего разряда, или дробными, если слева от старшего разряда.

Числа с фиксированной запятой, как было показано ранее допускают достаточно простые способы выполнения арифметических операций, но имеют весьма ограниченный диапазон возможных значений, -(2 -1)…0…(2 -1), поэтому используются лишь в простых приложениях.

В ЭВМ вещественные числа D хранятся и используются в показательной форме, т. е. в виде двух составляющих: мантиссы M и смещенного порядка E:

Читайте также:  Временно остановить кровотечение можно несколькими способами выберите правильные

D=±M*2 ;

Смещение порядка необходимо для того, чтобы можно было представлять числа меньше единицы.

При этом числа обычно представляются в виде нормализованной мантиссы, имеющей 23 разряда, где первая значащая цифра «1» мысленно находится слева от запятой, а справа располагаются 23 разряда: 1,ххх…ххх. Поэтому М =1,111…111=1+1/2+1/4+1/8+…=2, а М =1,000…000=1. Разряд знака мантиссы равен 0 для положительного числа и равен 1 для отрицательных чисел. При этом разряд знака записывается слева от значащих цифр мантиссы и таким образом число мантиссы имеет 24 разряда. Порядок числа записывается 8-ми разрядным двоичным числом, при этом максимальный порядок составляет Е =11111110=254, а минимальный Е =00000001=1. Диапазон изменения чисел при этом составляет от +D =M *2 =3,4*10 до +D =M *2 =1,17*10 . Точность представления определяется числом разрядов мантиссы. При 23 двоичных разрядах 2 10 , т. е. достоверными являются только 6-7 значащих цифр, а не 38. Следует отметить, что значения порядка 11111111 и 00000000 по международному стандарту IEEE 754 и 854 предназначены для кодирования денормализованных чисел, отрицательной и положительной бесконечностей, неопределенностей и специальных чисел.

Источник

Машинное представление информации

Микропроцессоры обрабатывают упорядоченные двоичные наборы. Минимальной единицей информации является один бит.

Далее следуют — тетрада (4 бита), байт ( byte 8 бит), двойное слово (DoubleWord 16 бит) или длинное (LongWord 16 бит) и учетверенное слова. Младший бит обычно занимает крайнюю правую позицию.

4. Числа с фиксированной точкой

Такие числа могут быть как целыми, так и дробными. Точка мысленно фиксируется рядом с любым разрядом. Если она располагается справа от младшего бита, то число целое, если слева от старшего — число дробное. Далее будут рассматриваться только целые числа с фиксированной точкой, для нецелых чисел чаще применяется показательная форма, о которой пойдет речь дальше.

Естественным представлением целого неотрицательного числа является двоичная система счисления. Кодирование отрицательных чисел производится тремя наиболее употребительными способами, в каждом из которых крайний левый бит — знаковый. Отрицательному числу соответствует единичный бит, а положительному — нулевой. Каждый способ оценивается по скорости и затратам на выполнение сложения и изменения знака числа, т.к. вычитание есть сложение с измененным знаком одного операнда.

4.1 Прямой код

Изменение знака производится просто, путем инверсии бита знака. Пусть 00001001 = 9, тогда 10001001 = -9. Если при сложении двух чисел в этом коде знаки совпадают, то трудностей нет. Если знаки различаются необходимо найти наибольшее число, вычесть из него меньшее, а результату присвоить знак наибольшего слагаемого.

4.2 Обратный код, инверсный или дополнительный «до 1»

Изменение знака производится просто — инверсией всех бит: 00001001 = 9, а 11110110 = -9. Сложение также выполняется просто, т.к. знаковые биты можно складывать. При переносе единицы из левого (старшего) бита, она должна складываться с правым (младшим). Например: 7 + (-5) = 2.

11111010 =-5 (инверсия 00000101 = 5)

Сложение в обратном коде происходит быстрее, т.к. не требуется принятие решения, как в предыдущем случае. Однако суммирование бита переноса требует дополнительных действий. Другим недостатком этого кода является представление нуля двумя способами, т.к. инверсия 0. 00 равна 1. ..11 и сумма двух разных по знаку, но равных по значению чисел дает 1. 11.Например: (00001001 = 9) + (11110110 = -9) = 11111111. Кстати, из этого примера понятно почему код называется дополнительным «до 1».

4.3 Дополнительный или дополнительный «до 2» код

Число с противоположным знаком находится инверсией исходного и добавлением к результату единицы. Например, найти код числа -9.

00001001 = 9 11110111 =-9

11110110 — инверсия 00001000 — инверсия

Читайте также:  Составьте таблицу способов символьного представления информации математика

11110111 =-9 00001001 = 9

Проблемы двух нулей нет. +0 = 00000000, -0 = 11111111 + 1 = 00000000 (перенос из старшего бита не учитывается).Сложение производится по обычным для неотрицательных чисел правилам.

Из этого примера видно, что в каждом разряде двух равных по модулю чисел складываются две единицы, что и определило название способа. Этот метод применяется наиболее часто, и когда говорят о дополнительном коде, то имеется в виду дополнительный «до 2-х» код.

5. Схема алгоритма

Программная реализация алгоритма

Общие сведения

Программа написана на языке Turbo Pascal 7.0 . Минимальные требования к конфигурации системы: процессор 80386 и выше. Исполняемый файл MS-DOS «v1_13.exe».

Файл с исходными данными должен находиться в том же каталоге, что и «v1-13.exe», и носить название «in.txt». Файл результатов работы — «out.txt».

Данные должны быть целыми числами(возможно со знаком) в диапазоне от –128..+127, т.к. для реализации задачи была выбрана 8 разрядная двоичная сетка.

Описание использованных функций и процедур

В данной работе для перевода из одной системы в другую используется несколько функций:

v DecToBase – выполняет перевод из десятичной в 2-16 системы счисления;

v BaseToInt – обратный перевод из Base-системы счисления в десятичную СС;

DecToBase

Данная функция является программным осуществлеием алгоритма преобразования числа из десятичной системы счисления в любую другую, описанного выше.

Удобство функции заключается в том, что она чувствительнак знаку числа и по умолчанию при переводе в двоичную систему счисления использует дополнительный «до 1» код, что избавляет нас от написания дополнительной функции перевода.

BaseToInt

Данная функция реализует алгоритм преобразования числа Base- системы счисления в десятичную по следующей формуле:

p-основание СС; Х – десятичное представление числа.

Функция определяет знак числа за счет учета инверсии: т.к. используем 8 разрядную двоичную сетку и числа со знаком, то имеет 128 отрицательных и 127 положительных значений и ноль (всего 256), то есть отрицательная величина лежит в диапазоне беззнаковых значений 128..256. А выражение (256- ), где — беззнаковая величина после преобразования, есть модуль отрицательного числа.

Источник

Машинное представление информации.

Машинное представление информации.

Числа с фиксированной точкой.

Вещественные числа с плавающей точкой .

Машинные двоичные коды.

Учебная литература: [1], [6], [7], [11].

Машинное представление информации

В ЭВМ обрабатываются упорядоченные двоичные наборы. Единицы измерения информации в ЭВМ приведены на рисунке 2.1. Минимальной единицей информации является один бит.

Рисунок 2.1 – Единицы измерения информации в ЭВМ

Далее следуют – тетрада (4 бита), байт (byte – это 8 бит), двойное слово (DoubleWord – 16 бит) или длинное (LongWord 16 – бит) и учетверенное слова. Младший бит обычно занимает крайнюю правую позицию.

Формы представления чисел

В ЭВМ применяются две формы представления чисел:

— с фиксированной запятой;

— плавающей запятой.

Данные, хранящиеся в ячейках памяти и регистрах ЦВМ в формате с фиксированной запятой, имеют постоянное число разрядов слева и справа от запятой. Сама запятая не реализуется техническими средствами, ее положение учитывается при составлении программ.

Чаще всего запятая условно фиксируется сразу после знакового разряда. В этом случае в ЦВМ используются только числа, абсолютная величина которых не больше единицы.

Прежде чем рассмотреть каждую из форм представления чисел запишем некоторое произвольное число в виде полинома

(2.1)

где – цифра из алфавита цифр выбранной позиционной системы счисления (ПСС);

– основание ПСС;

– коэффициент, учитывающий позицию (место расположения) цифры в составе числа.

Затем преобразуем формулу (2.1) к виду:

(2.2)

где – цифровая часть числа , называемая его мантиссой;

– целое число, которое называют порядком, который определяет место точки в числе;

– множитель называемый масштабом.

Для чисел c фиксированной запятой (ФЗ) величина постоянна и обычно равна . При мантисса числа будет правильной дробью, причем

Читайте также:  Украшение торта домашним способом

(2.3)

где – количество разрядов, используемых для записи мантиссы числа.

Изображается мантисса записью вида

. (2.4)

В ЭВМ с ФЗ любое число представляется только своей мантиссой, а масштаб в машине никак не отображается. Поэтому масштабы чисел необходимо учитывать в алгоритмах решаемых задач. Это делается путем масштабирования всех исходных данных и результатов всех операций в математическом списании задачи так, чтобы не допустить нарушения условия (2.3). В противном случае происходит грубое искажение результата из-за потери в ЭВМ старших разрядов мантиссы.

Достоинствами представления чисел в форме с ФЗ являются:

— малый расход оборудования для представления числовой информации;

— высокая производительность арифметико-логического устройства (АЛУ), обусловленные простотой алгоритмов выполнения арифметических операций.

Недостатокнеобходимость осуществления масштабирования исходных данных на этапе подготовки вычислений.

Для чисел c плавающей запятой (ПЗ) требуется отображение не только мантиссы каждого числа, но и его масштаба . Для представления последнего достаточно записать только его порядок .

Основное достоинство такого представления в том, что отпадает необходимость в масштабировании переменных.

Недостатками является:

сложность алгоритмов реализации арифметических операций.

— увеличение объема оборудования, в связи с необходимостью выполнения действий и над мантиссами чисел и над их порядками;

— снижение производительности ЭВМ.

К бортовым ЦВМ (БЦВМ) предъявляются жесткие ограничения на массогабаритные характеристики и время выполнения арифметических операций.

Одним из путей достижения этих ограничений является использование представления чисел с фиксированной запятой. А сами числа должны быть представлены в виде правильных дробей, целая часть которых равна нулю. В связи с этим между числом и его представлением в ЦВМ существуют отличия.

Число, преобразованное для размещения внутри ЦВМ, называется машинным кодом.

Машинные двоичные коды

Двоично-десятичный код

Двоично-десятичный код (ДДК) или Binary Coded Decimal (BCD) может быть упакованным, когда в одном байте хранятся две десятичные цифры, либо неупакованным – по одной цифре в байте. Упакованное число 1996 представляется в виде двух байтов: 0001 1001 и 1001 0110. Для знака числа отводится дополнительный байт, например, в формате (ДД) девять байтов отводится для размещения 18-ти цифр, а в старшем бите десятого байта находится знак числа.

Буквенно-цифровой код

Для вывода информации на устройства отображения, например дисплей или принтер, а также для ввода или передачи данных используются буквенно-цифровые коды. Буквы, цифры, математические символы, знаки препинания, символы для рисования линий, управляющие символы и некоторые другие (таблица 2.1) кодируются однобайтовыми числами. Существует несколько разновидностей таких кодов, например: ASCII, КОИ-7, КОИ-8, альтернативный код ГОСТ, основной код ГОСТ и другие. ASCII и 7-ми битовый код для обмена информацией (КОИ-7) отображают первые 128 символов и входят в состав остальных кодировок. Дополнительные символы и русский алфавит входят в восьмибитовые расширенные коды (КОИ-8, альтернативный и основной). Общее число символов в этих кодах равно 256. Таблица некоторых кодов приведена ниже. Следует отметить, что нулевой код (NULL) не кодирует цифру ноль и вообще никак не отображается.

Таблица 2.1 – Примеры буквенно-цифровых кодов

В Internet для русского языка используется кодировка КОИ-8. В настоящее время разработан и используется 16-ти битовый Unicode с 65536 различными симвоволами.

Восьмисегментный код

Служит для отображения образа BCD или HEX цифры высвечиваемой на индикаторе в виде набора 0 и 1. Может быть принято следующее соответствие между битами и сегментами (рисунок 2.6), где приведен битовый набор для высвечивания цифры 4. Единицы обычно соответствуют светящимся сегментам.

Рисунок 2.6 – Соответствие между битами кода и сегментами цифрового

Индикатора для цифры «4»

Машинное представление информации.

Источник

Оцените статью
Разные способы