Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОСНОВЫ ИНФОРМАТИКИ.pdf
Скачиваний:
106
Добавлен:
09.03.2016
Размер:
704.66 Кб
Скачать

той. Тогда разрядную сетку можно представить следующим образом:

Sm

r

m

Преобразование двоичного нормализованного числа в 32-битный формат IЕЕЕ 754

Основное применение в технике и программировании получили форматы 32 и 64 бита.

Описание преобразования в 32-битный формат IEEE 754:

1.Число может быть положительным или отрицательным, поэтому отводится один самый старший бит в 32-битной последовательности для обозначения знака числа:0 – для положительного, 1 – для отрицательного.

2.Далее следуют биты экспоненты (порядка), для чего выделяется 1 байт (8 бит); для определения знака экспоненты, чтобы не вводить ещё один бит знака, добавляется смещение к экспоненте в половину байта; смещенная экспонента (характеристика) записывается в отведенные 8 бит.

3.Оставшиеся 23 бита отводятся для остатка от мантиссы; у нормализованной двоичной мантиссы первый бит, равный единице, не записывается в отведенные 23 бита.

Формальное представление чисел в стандарте IЕЕЕ 754

для любого формата точности:

S – бит знака (если S = 0, то число положительное, иначе, если S = 1, то отрицательное), E – смещенная экспонента (характеристика) двоичного числа, M – остаток от мантиссы двоичного нормализованного числа с плавающей запятой.

4.3. Представление символьной информации в компьютере

Для кодирования символьной или текстовой информации применяются различные системы: при вводе информации с клавиатуры кодирование происходит при нажатии клавиши, на которой изображен требуемый символ, при этом в клавиатуре вырабатывается так называемый scan-код, представляющий собой двоичное число, равное порядковому номеру клавиши. Номер нажатой клавиши никак не связан с формой символа на ней. Опознание символа и присвоение ему внутреннего кода компьютера производятся специальной программой по специальным таблицам: ДКОИ, КОИ-7, ASCII.

Кодировка ASCII

Существует множество кодировочных таблиц, одна из них – таблица ASCII (American Standard Code for Information Interchange – Американский стандартный код для обмена информацией). Таблица разделена на две части: основную – с кодами от 00h до 7Fh (в шестнадцатеричной системе счисления) и дополнительную – с кодами от 80h до FFh. Как правило, проблем с кодированием англоязычных текстов не бывает, так как первая половина кодировки стандартизована.

Для кодировки одного символа из таблицы отводится восемь бит (один байт). При обработке текстовой информации один байт может содержать код некоторого символа (буквы, цифры, знака пунктуации и т.д.). Каждому символу соответствует свой код в виде целого числа. Один байт как набор восьми битов позволяет закодировать 256 символов, что вполне достаточно для работы сразу с двумя обычными языками (например, английским и русским). При этом все коды собираются в специальные таблицы, называемые кодировочными. С их помощью производится преобразование кода символа в его видимое представление на экранемонитора. В результате любой текст в памяти компьютера представляется как последовательность байтов с кодами символов.

Основные способы кодировки байтами в формате Unicode:

UTF-8: 128 символов кодируются одним байтом (формат ASCII), 1920 символов кодируются двумя байтами (Roman, Greek, Cyrillic, Coptic, Armenian, Hebrew, Arabic символы),

23

63488 симво-лов кодируются тремя байтами (Китайский, японский и др.), оставшиеся 2 147 418 112 символы (еще не использованы) − че-тырьмя, пятью или шестью байтами;

UCS-2: каждый символ представлен двумя байтами; данная кодировка включает лишь первые 65 535 символов из формата Unicode;

UTF-16: является расширением UCS-2, включает 1 114 112 символов формата Unicode; первые 65 535 символов представлены двумя, остальные – четырьмя байтами.

USC-4: каждый символ кодируется четырьмя байтами.

Таким образом, восемь бит используются для кодирования европейских языков, а для китайского, японского и корейского языков используется большее количество битов. Это влияет на объем занимаемого дискового пространства и на скорость передачи по сети. UTF-8 кодировка занимает меньше дискового пространства и позволяется передавать данные по сети с большей скоростью.

Стандарт Unicode был разработан с целью создания единой кодировки символов всех современных и многих древних письменных языков. Каждый символ в этом стандарте кодируется шестнадцатью битами (двумя байтами), что позволяет ему охватить большее количество символов, чем принятые ранее 7- и 8-битовые кодировки. Еще одним важным отличием Unicode от других систем кодировки является то, что он не только приписывает каждому символу уникальный код, но и определяет различные характеристики этого символа: тип символа (прописная буква, строчная буква, цифра, знак препинания и т.д.), атрибуты символа (отображение слева направо или справа налево, пробел, разрыв строки и т.д.), соответствующая прописная или строчная буква (для строчных и прописных букв соответственно), соответствующее числовое значение (для цифровых символов).

Контрольные вопросы

1.Какие формы представления двоичных чисел используются в компьютере?

2.Как представляется целое двоичное число в форме с фиксиро-ванной запятой?

3.Почему в компьютерах используются разные коды для пред-ставления целых чисел?

4.Какой код используется для представления целых положитель-ных чисел? Привести пример.

5.Какие коды используются для представления целых отрица-тельных чисел? Привести примеры.

6.Как получить обратный код из прямого? Привести пример.

7.Как получить дополнительный код из обратного? Привести пример.

8.Для каких чисел используется форма с плавающей запятой и ка-кую имеет запись представления числа в этой форме?

9.Что такое денормализованная и нормализованная форма, ман-тисса, порядок и характеристика

вещественного числа?

10.Как может представляться символьная информация в компью-тере?

Варианты практических заданий по теме «Формы представления данных в компьютере»

Вариант № 1

1.Перевести десятичные числа в двоичную систему счисления и записать их в форме с фиксированной запятой в прямом, обратном и дополнительном кодах, если имеются 12 разрядов для представления чисел в двоичной системе счисления: –1023; 376; –112.

2.Записать двоичные числа с плавающей запятой в денормализо-ванной и нормализованной формах: –1011,1111; 0,000101011; 0,1110111.

Вариант № 2

1.Перевести десятичные числа в двоичную систему счисления и записать их в форме с фиксированной запятой в прямом, обратном и дополнительном кодах, если имеются 11 разрядов для представления чисел в двоичной системе счисления: –902; 356; –118.

2.Записать двоичные числа с плавающей запятой в денормализованной и нормализованной формах: –10110,111; 0,00101011; 0,10101011.

Вариант № 3

1.Перевести десятичные числа в двоичную систему счисления и записать их в форме с фиксированной запятой в прямом, обрат-ном и дополнительном кодах, если имеются 12 разрядов для представления чисел в двоичной системе счисления: –992; 656; –188.

24

2.Записать двоичные числа с плавающей запятой в денормализо-ванной и нормализованной формах: –101100,1011; 0,010101101; 0,1010101100.

Вариант № 4

1.Перевести десятичные числа в двоичную систему счисления и записать их в форме с фиксированной запятой в прямом, обрат-ном и дополнительном кодах, если имеются 11 разрядов для представления чисел в двоичной системе счисления: –918; 313; –110.

2.Записать двоичные числа с плавающей запятой в денормализо-ванной и нормализованной формах: –100,1101; 0,000000101011; 0,10111101011.

Вариант № 5

1.Перевести десятичные числа в двоичную систему счисления и записать их в форме с фиксированной запятой в прямом, обрат-ном и дополнительном кодах, если имеются 10 разрядов для представления чисел в двоичной системе счисления: –402; 396; –318.

2.Записать двоичные числа с плавающей запятой в денормализо-ванной и нормализованной формах: –1001010,111; 0,001010101; 0,1010111011.

Вариант № 6

1.Перевести десятичные числа в двоичную систему счисления и записать их в форме с фиксированной запятой в прямом, об-ратном и дополнительном кодах, если имеются 12 разрядов для представления чисел в двоичной системе счисления: –1028; 350; –148.

2.Записать двоичные числа с плавающей запятой в денормализо-ванной и нормализованной формах: –1010,111; 0,00000101011; 0,1000101011.

Вариант № 7

1.Перевести десятичные числа в двоичную систему счисления и записать их в форме с фиксированной запятой в прямом, обратном и дополнительном кодах, если имеются 11 разрядов для представления чисел в двоичной системе счисления: –907; 353; –198.

2.Записать двоичные числа с плавающей запятой в денормализо-ванной и нормализованной формах: –1110110,1011; 0,000000101; 0,10101000011.

Вариант № 8

1.Перевести десятичные числа в двоичную систему счисления и записать их в форме с фиксированной запятой в прямом, обратном и дополнительном кодах, если имеются 10 разрядов для представления чисел в двоичной системе счисления: –602; 306; –228.

2.Записать двоичные числа с плавающей запятой в денормализо-ванной и нормализованной формах: –1010010,111; 0,0010010101; 0,1000101011.

Вариант № 9

1.Перевести десятичные числа в двоичную систему счисления и записать их в форме с фиксированной запятой в прямом, обратном и дополнительном кодах, если имеются 11 разрядов для представления чисел в двоичной системе счисления: –802; 326; –117.

2.Записать двоичные числа с плавающей запятой в денормали-зованной и нормализованной формах:

–1010010,111; 0,0000011011; 0,1010100011.

Вариант № 10

1.Перевести десятичные числа в двоичную систему счисления и записать их в форме с фиксированной запятой в прямом, обратном и дополнительном кодах, если имеются 12 разрядов для представления чисел в двоичной системе счисления: –1002; 256; –218.

2.Записать двоичные числа с плавающей запятой в денормали-зованной и нормализованной формах: –1011000,11; 0,0101011; 0,100110101011.

Вариант № 11

1.Перевести десятичные числа в двоичную систему счисления и записать их в форме с фиксированной запятой в прямом, обратном и дополнительном кодах, если имеются 11 разрядов для представления чисел в двоичной системе счисления: –942; 556; –198.

2.Записать двоичные числа с плавающей запятой в денормали-зованной и нормализованной формах:

–1011000,1011; 0,000010101101; 0,1010101111.

Вариант № 12

1.Перевести десятичные числа в двоичную систему счисления и записать их в форме с фиксированной запятой в прямом, обратном и дополнительном кодах, если имеются 10 разрядов для представления чисел в двоичной системе счисления: –702; 316; –218.

25