Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Met_Lab2_121113

.pdf
Скачиваний:
16
Добавлен:
11.05.2015
Размер:
1.72 Mб
Скачать

1.Выполнить инвертирование битов двоичного дополнения.

2.К полученному двоичному числу прибавить двоичную единицу.

Кпримеру, определим модуль двоичного представления числа – 18510 =(1111111101000111)2

(1111111101000111)2 инвертируем биты (0000000010111000)2. Добавляем двоичную единицу:

(0000000010111000)2 + (0000000000000001)2 = (0000000010111001)2 = |-185|.

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

2. Формы представления данных в ЭВМ

ВЭВМ используются следующие формы представления данных.

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

Числа с плавающей точкой

Десятичные числа

Символьные данные

2.1. Формы представления чисел в ЭВМ

Обычно числа в машинах представляются в одной из двух форм: с фиксированной запятой или с плавающей запятой. В формате с фиксированной запятой возможны два

представления: беззнаковое (“целое без знака”), представление чисел со знаком.

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

изображения знака числа обычно отводится самый левый разряд ячейки a0 , причем "плюс"

кодируется двоичной цифрой 0, а "минус" – 1.

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

A)Запятая фиксирована перед первым разрядом (после a0 )

B)Запятая фиксирована после n-го разряда ( an )

Очевидно,

что в

случае а) в разрядной сетке могут быть записаны

 

числа от

(12n ) до 2n

и от 2n

до + (12n ) , а так же и нуль. Числа 0, для которых

 

0

 

< 2n не

 

 

могут быть представлены в такой форме и принимаются равными нулю. Не могут быть представлены и числа такие, что 0 1.

0 12n

При представлении, соответствующем б),

0 2n 1

кроме нуля, могут быть записаны числа такие, что 1 0 < 2n .

Все числа из диапазона 0 < 0 < 1 не могут быть представлены в такой форме и принимаются равными нулю.

11

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

Двоичное число

0 = 0,a0a1a2a3...an > 0 будет представлено как 0,a0a1a2a3...an .

Если 0 = 0,a0a1a2a3...an

< 0 то как 1,a0a1a2a3...an . Приведенное кодирование дробных

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

[0

]

=

 

 

0, 0 ≥ 0;

 

пр

 

 

+

0

, 0 ≤ 0;

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

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

В памяти ЭВМ числа с фиксированной точкой могут хранятся в трех форматах

1)полуслово – 16 бит, 2 байт,

2)слово – 32 бита,4 байта,

3)двойного слово – 64 бита, 8 байт.

2. Сложение и вычитание в ЭВМ

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

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

Прямой код. Рассмотрим двоичное число 0 = ±0,a1,a2 ,...,an

В разрядной сетке число N представляется (кодируется) следующим образом:

[0]

=

0,a1,a2 ,...,an , 0 ≥ 0;

где [0] - прямой код числа N.

пр

 

 

 

 

 

 

 

пр

 

 

1,a1,a2 ,...,an , 0 ≤ 0;

 

Так как

 

0

 

< 1 эти соотношения можно переписать в виде:

 

 

[0]

=

 

 

0, 0 ≥ 0;

 

пр

 

 

+

0

, 0 ≤ 0;

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Введем обозначения:

 

A= a0a1a2a3...an ,

 

B=b0b1b2b3...bn ,

 

C=f(A,B)= c0c1c2c3...cn ,

 

где: a0 , b0

 

- знаковые разряды слагаемых;

c0 -код знака результата;

ai ,bi ,ci -двоичные переменные.

f-тип выполняемой операции, f=1 вычитание, f=0 сложение. Of – признак переполнения (Boolean).

Рассмотрим проблему обнаружения факта переполнения разрядной сетки (когда полученный результат не умещается в число отведенных разрядов). Это может произойти если

12

C = A + B 1.

При сложении чисел с разными знаками ситуация переполнения не возникает. Если знаки слогаемых одинаковы, признаком переполнения может служить перенос, возникающий при сложении старших разрядов модулей a1 + b1 . При отсутствии этого переноса сложение двух любых одинаковых разрядов даст в результате c0 = 0 , а при появлении переноса из первого разряда c0 = 1. Таким образом, после сложения чисел с

одинаковыми знаками значение знакового разряда суммы можно рассматривать как признак переполнения of=1.

Необходимо отметить, что полученное в знаковом разряде c0 значение не является

знаком результата (алгебраической суммы). Значение знака формируется не в результате арифметической операции над знаковыми разрядами, и специальным образом. Рассмотрим это на примере сложение чисел с разными знаками. Сложение сводится к вычитанию модулей слогаемых, причем уменьшаемым должен стать больший модуль. Признаком того что A > B будет отсутствие заема из нулевого в первый разряд. Поскольку рассматривается

случай разных знаков слагаемых, то при отсутствии заема значение знакового разряда разности определяется 0-1=1-0=1, а при наличии заема 0-1-1=1-0-1=0. Таким образом, при вычитании А-В получим c0 = 1, это будет означать A > B , и результату следует присвоить

знак числа A (c0 = a0 ). Если c0 = 0 , то A < B , и следует осуществить вычитание B-A, присвоив результату знак числа B ( c0 = b0 ).

Аналогичным образом кодируются и числа, модуль которых не меньше единицы. Пример. Записать двоичные числа в прямом коде:

N = 0,110101

[N]пp = 0 110101

N = -101,1101

[N]пp= l 1011101

Дополнительный код. Из равенства х - у = х + (Р - у) - Р следует, что операцию вычитания у из х можно заменить операцией сложения Р-у и х с последующим вычитанием

из результата величины Р (где Р - основание степени).

 

Введем запись:

 

 

 

 

 

 

 

 

 

 

 

 

 

[0]Д

= 0, 0 0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P + 0, 0 0;

 

 

 

 

 

 

 

 

 

 

 

 

 

[0]Д

0xn1 xn2 xn3 ... x0 x1 x2

... xm , 0 0;

 

=

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

 

 

 

... xm + 2

 

< 0;

 

1xn1 xn2 xn3

... x0 x1 x2

 

, 0

Представление чисел в соответствии с записью [И]д называется дополнительным кодом числа N.

Обратный код. Операцию вычитания можно заменить операцией сложения и на основе соотношения х-у=х+(Р-Р-n -у)-Р+Р-n. Код, определенный с помощью соотношения:

[0]

=

 

 

 

0, 0 0;

 

 

 

 

ОБР

 

 

 

 

 

 

 

n

, 0 0;

 

 

 

 

 

 

P + 0 P

 

 

 

 

 

[0

]

=

0xn1xn2 xn3

... x0 x1x2

... xm , 0 0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

... xm , 0 < 0;

 

ОБР

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1xn1 xn2 xn3

... x0 x1 x2

Называется обратным кодом числа N.

Отметим, что при Р=2 для получения обратного кода отрицательного числа в знаковый разряд нужно записать единицу, а каждую цифру в записи числа заменить на ее дополнение до Р-1, то есть единицу заменить на нуль, а нуль на единицу.

Пример. Записать двоичные Числа в обратном коде:

N = 0:110101

[N]o6p = 0 110101

N = -101,1101

[N]o6p= 10100010

13

Из приведенных выше соотношений следует, что

[0]Д = 0ОБР + Pn ,

то есть отличие в записи дополнительного и обратного кодов отрицательного числа заключается в последнем разряде. Если в последнем (n-м) разряде в дополнительном коде записывается (Р-аn), то в обратом (Р-1- аn). Отсюда следует, что для получения дополнительного кода отрицательного числа нужно к его обратному коду прибавить единицу.

Пример. Записать двоичные числа в дополнительном коде:

N = 0,110101

[N]ОБР = 0 110101

N = -101,1101

[N]ОБР = 1 0100011 .

Из приведенных

определений следует, что положительные числа в прямом,

обратном и дополнительном кодах совпадают. В прямом и обратном коде нуль имеет два представления - "положительный" и "отрицательный" нуль. В дополнительном коде нуль имеет только одно, "положительное" представление.

Алгебраическое сложение. Рассмотрим сначала использование обратного кода для алгебраического сложения n-разрядных двоичных чисел R и Q, когда оба они или, одно из них отрицательно. Будем считать, что модуль их алгебраической суммы меньше единицы и единица переноса из разряда знака прибавляется к младшему разряду получившейся суммы.

Пусть R<0 и Q<0. Считаем, что -1<R+Q<1. Тогда можно записать

RОБР + QОБР = 2 + R 2n + 2 + Q 2n

В связи с тем, что возникает перенос из знакового разряда, одна двойка пропадает и добавляется единица переноса к младшему разряду суммы (2-n):

RОБР + QОБР = R + Q + (2 2n ) 2n + 2n = 2 + (R + Q) 2n = [R + Q]ОБР

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

Пусть R>0 и Q<0. Можно записать: [R]ПР + [Q]ОБР = R + 2 + Q 2n

Если (R+Q)>0, то 2+(R+Q)>2 и возникает перенос из разряда знака. В этом случае

имеем:

[R]ПР + [Q]ОБР = R + Q 2n + 2n = [R + Q]ПР

Если (R+Q)<0, то 2 + (R+Q) < 2, и переноса не возникает, получаем:

[R]ПР + [Q]ОБР = 2 + (R + Q) 2n = [R + Q]ОБР

Таким образом, сложение чисел с использованием обратных кодов с циклическим переносом приводит к получению алгебраической суммы в прямом коде, если сумма

положительна, и в обратном коде, если сумма отрицательна.

Аналогично можно показать, что при использовании дополнительных кодов

алгебраическое сложение их, включая разряды знаков, которые рассматриваются как разряды целых единиц, дает, если единица переноса из разряда знака отбрасывается,

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

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

Пример 1. Сложить два числа в обратном коде.

A=+0,1101

[A]ПР =01101

B=-0,0011

[B]ПР =10011

14

[C]ПР =01010, C=0,1010

Пример 2. Сложить два числа в обратном коде.

A=-0,1101

[A]ПР =10010

B=+0,0011

[B]ПР =00011

[C]ПР =11010, C=-0,1010

Пример 3. Сложить два числа в обратном коде.

A=-0,0101

[A]ПР =10101

B=-0,0110

[B]ПР =10110

[C]ПР =11011, C=-0,1011

Пример 4. Сложить два числа в обратном коде. Случай переполнения разрядной

сетки.

A=+0,1101

[A]ПР =01101

B=+0,0101

[B]ПР =00101

[C]ПР =11101, C=-0,1101

Признак переполнения можно записать (противоположный одинаковым знакам слогаемых):

OF = a0 b0c0 a0b0 c0

Достоинства работы с обратным кодом:

1)использовать только действие алгебраического сложения двоичных кодов,

2)получить истинное значение знака результата, выполняя над знаковыми разрядами операндов те же действия, что и над разрядами чисел,

3)обнаружить переполнение разрядной сетки,

4)простое преобразование из прямого в обратный код.

Недостатки 1) коррекция предварительной суммы требует добавления единицы к ее младшему

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

15

Пример 5. Сложить два числа в дополнительном коде.

A=-0,1101

[A]ПР =11101

B=+0,0011

[B]ПР =00011

[C]ПР =11010, C=-0,1010

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

Пример 6. Сложить два числа в дополнительном коде.

A=-0,0101

[A]ПР =10101

[A]Д =11011

B=-0,0110

[B]ПР =10110

[B]Д =11010

[C ]Д =10101,[C]ПР =11011, C=-0,1011

Результат получился отрицательный, значит он в дополнительном коде, переводим его в прямой. Возникла ситуация переполнения в разряде знака. Единицу просто надо отбросить и не учитывать далее в соответствии с правилом.

Пример 7. Сложить два числа в дополнительном коде.

A=-0,0101

[A]ПР =10101

[A]Д =11011

B=+0,0101

[B]ПР =00101

[B]Д =00101

[C ]Д =00000,[C]ПР =00000, C=+0,0000

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

Признак переполнения можно записать (противоположный одинаковым знакам слогаемых):

OF = a0 b0c0 a0b0 c0 c0 c1 c2 ...cn

Достоинства работы с дополнительным кодом:

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

16

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

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

Для обнаружения такого переполнения, учитывая, что модуль суммы двух таких чисел всегда меньше двух, используют один дополнительный разряд. Код (прямой, дополнительный, обратный), в котором имеется такой дополнительный разряд, называется модифицированным. В модифицированных кодах – дополнительный разряд используется для дублирования знака числа, то есть знак «плюс» обозначается 00, а "минус" - 11. Правила переноса из разрядов знака остаются прежними в зависимости от того, в каком коде (обратном или дополнительном) представлены числа. На переполнение же разрядной сетки, то есть ситуацию, когда модуль суммы 1≤ R + Q < 2 указывает несовпадение цифр в

знаковых разрядах. В этом случае комбинации 01 соответствует положительное, а 10 - отрицательное число.

Пример. Сложить двоичные числа R=-0,11011 и Q=-0,00101. Прямой модифицированный код [R]ПРМ = 00 11011 Обратный модифицированный код [R]ОБРМ =11 11010

Пример. Сложить двоичные числа R=-0.10101 и Q=-0,11001. Дополнительный модифицированный код [R]ДМ = 11 01010

Дополнительный модифицированный код [Q]ДМ = 11 00111

[R + Q]ДМ = 1010010

Представление чисел в форме с плавающей запятой

При форме представления с плавающей запятой число 0 считают приведенным к

виду:

0 = m Pn ,

(1)

где m - число с запятой, фиксированной после определенного разряда, называемое мантиссой, n - целое число, называемое порядком, а Р – основание системы счисления.

17

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

Если в записи (1) старшая цифра мантиссы отлична от нуля, то число 0 называют нормализованным (в противном случае - ненормализованным). При запятой, фиксированной перед старшим разрядом мантиссы, нормализованными являются числа, для

которых 1 m < 1.

P

Пример. Десятичное число 25,2 в форме с плавающей запятой (при запятой мантиссы, фиксированной перед старшим разрядом) может иметь любой из видов 0,252*102; 0,0252* 103; 0,00252*104 и т.д. Нормализованной является только запись 0,252* 102, а все остальные являются ненормализованными.

Ниже изображено возможное представление нормализованных чисел с плавающей запятой в 32-х разрядной сетке ЭВМ.

При обработке в ЭВМ чисел с плавающей запятой также возможно переполнение разрядной сетки, которое заключается в том, что в результате какой-либо операции возникает число, имеющее порядок с большей разрядностью, чем допустимая при представлении порядка в машине. Кроме того, в машине возможно появление машинных нулей, т.е. нормализованных чисел, отличных от нуля, но имеющих порядок, меньший самого малого порядка, представимого в разрядной сетке. Обычно машинные нули записываются в виде нулевой мантиссы и нулевого порядка.

Если количество разрядов мантиссы больше количества, выделенного для ее представления в разрядной сетке ЭВМ, избыточные младшие разряды отбрасываются, возможно, с округлением последнего из оставшихся.

Диапазон нормализованных двоичных чисел с плавающей запятой, представленных в разрядной сетке ЭМВ, если запятые в мантиссах фиксированы перед старшими разрядами, оценивается неравенствами:

22S 0 (12k ) 22S 1

где N - исходное число, к - количество цифровых разрядов мантиссы, s - количество цифровых разрядов порядка.

В памяти ЭВМ числа с плавающей точкой хранятся в двух форматах:

1)слово – 32 бита, 4 байта.

2)двойного слово – 64 бита, 8 байт.

Операции над числами с плавающей запятой. Пусть имеется два нормализованных числа: X = m1Pn и Y = m2Pk

Тогда, полагая, что X>Y,

X+Y = Pn (m1 + m2 P( k) ). Аналогично,

XY = Pn (m1 m2 P( k) ).

Пусть сначала оба числа не отрицательны. Тогда, в соответствии с приведенными формулами, в машине выполняются следующие действия:

1) Происходит выравнивание порядков чисел, причем порядок меньшего числа приводится к порядку большего числа, то есть порядок меньшего числа принимается

18

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

2) Для того, чтобы исходное число не изменило своего значения, мантисса меньшегочисла сдвигается на соответствующее число разрядов вправо (уменьшается в соответствующее число раз).

3)Происходит сложение или вычитание мантисс, в результате чего получается мантисса результата. Порядок результата в соответствии с произведенным выравниванием порядков принимается равным порядку большего числа.

4)Полученный результат округляется и, если нужно, нормализуется. Округление результата может быть реализовано несколькими способами. Например, один из них заключается в том, что предварительный результат вычисляется с количеством разрядов, большим, чем разрядная сетка чисел, над которыми производится операция. Если используется двоичный код, то достаточно одного лишнего разряда. В этом случае округление заключается в прибавлении к этому дополнительному младшему разряду предварительного результата единицы. 'Если в дополнительном разряде был получен нуль, это не вызовет переноса единицы в основные разряды. Если же в дополнительном разряде записана единица, то предварительный результат будет увеличен на единицу младшего разряда. После проведения, этих действий дополнительный разряд отбрасывается.

Таким образом, при выполнении операций сложения и вычитания возникает проблема выравнивания порядков чисел, то есть прежде всего должен быть проведен анализ знаков и величин порядков.

Для упрощения операций над порядками в ЭВМ порядок всех чисел увеличивается на одно и то же число так, чтобы порядок наименьшего числа, представимого в машине, был бы неотрицательным, то есть машинный порядок всех чисел nm удовлетворяет условию

nm = n + K , где K = max n +1. Например, если для хранения порядка в разрядной сетке выделено 6 разрядов, то max n = 1111112 = 6310 , так что nm = n + 64 , то есть 0 ≤ nm ≤ 127 .

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

Отметим, что при представлении чисел с плавающей запятой отдельно кодируются мантисса и порядок. При этом возможно представление мантисс и порядков чисел в одном и том же или разном кодах. Например, порядок числа может быть представлен в прямом, а мантисса - в дополнительном кодах и т.п.

Таким образом, в общем случае сложение и вычитание чисел с плавающей запятой состоит из следующих этапов:

-сравнивание порядков чисел;

-выравнивание порядков чисел;

-перевод мантисс слагаемых в обратный или дополнительный модифицированные

коды;

- сложение мантисс в прямом, обратном или дополнительном модифицированных

кодах;

-исправление нормализации вправо или влево;

-перевод мантиссы результата в прямой код;

-выдача результата с учетом порядка.

Представление десятичных чисел в ЭВМ

При представлении информации в виде десятичных многоразрядных чисел каждая десятичная цифра заменяется двоично-десятичным кодом.

(Ц)10=(Ц)2(Ц)2(Ц)2(Ц)2 Для ускорения обмена информацией, экономией памяти и удобства операций над

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

19

Зонный формат используется в операциях ввода-вывода десятичных данных, упакованный формат – для выполнения арифметических операций. Для этого в ЭВМ имеются специальные команды упаковки и распаковки десятичных чисел.

Зонный формат

Каждая цифра занимает один байт, причем в левую тетраду (зону) записывается код 1111(2)=F(16). В одном из крайних байтов зоны отведены для представления знака числа. Например, в ЕС ЭВМ для представления знака “+” выбран код 1100(2)(16), для представления знака “-“ – код 1101(2)=D(16). Код знака записывается в зону последнего байта (Рис. 1). Пример: число – (-6285) в зонном формате будет представлено в виде: F6 F2 F8 D5.

Рис. 1. Зонный формат (распакованный).

Рис. 2. Упакованный формат.

Рис. 3. Упакованный формат. Мини ЭВМ.

Вупакованном формате каждый байт содержит код двух десятичных цифр. Правая тетрада последнего байта используется для кода знака числа (Рис. 2). Десятичное число должно занимать целое число байтов. Если это условие не выполняется, то левая тетрада левого байта заполняется нулями. Пример. Код десятичного числа -6285 в упакованном формате имеет вид 06285D. Для представления десятичных чисел в памяти используется прямой код.

Вмалых ЭВМ десятичные числа в упакованном формате (Рис. 3) представляются дополнительным кодом, причем знаку плюс соответствует код 0000, а знаку минус – код 1001(2). Пример. Код числа -6285 в упакованном формате для малых ЭВМ имеет вид 9.3715 (Перевести в обратный код).

Цифровое представление текстовой информации

Представление текстовой информации в электронных публикациях осуществляется с помощью стандартов кодирования текста (символов) и текстовых форматов. На данный момент их перечень весьма ограничен. В качестве стандартов кодирования символов используются ASCII, ANSI, UNICODE. Из множества известных форматов в электронных изданиях нашел применение формат PDF, предложенный фирмой Adobe Systems для программных средств создания и просмотра электронных изданий Adobe Acrobat. Стандартом де-факто является формат RTF, предложенный фирмой Microsoft для организации обмена текстовой и графической информацией. Однако его применение в электронных изданиях весьма ограничено.

3.1. Стандарты кодирования символов ASCII, ANSI, КОИ-8 и UNICODE

20

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]