Учебник для спо 4е издание, переработанное и дополненное
Скачать 0.65 Mb.
|
Сравним запись десятичного числа 1946 = 1 · 10 3 + 9 · 10 2 + + 4 · 10 1 + 6 · 10 0 и двоичного 1010 = 1 · 2 3 + 0 · 2 2 + 1 · 2 1 + 0 · 2 0 Показатель степени, в которую необходимо возвести осно- вание р исходной системы счисления, совпадает с номером соответствующей позиции. Так как компьютер использует двоичную систему счис- ления, в нем важную роль играют и часто упоминаются чис- ла, служащие степенью числа 2, например: 8 (2 3 ), 64 (2 6 ), 128 (2 7 ), 256 (2 8 ). Самое большое 8-разрядное число с восе- мью двоичными единицами 11111111 = 1 · 2 7 + 1 · 2 6 + 1 · 2 5 + + 1 · 2 4 + 1 · 2 3 + 1 · 2 2 + 1 · 2 1 + 1 · 2 0 равно десятичному числу 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255. Вместе с нулем по- лучается как раз 256 целых чисел, что равно 2 8 Шестнадцатиричная система — система чисел по осно- ванию 16, использующая цифры от 0 до 9 и прописные или строчные буквы латинского алфавита от А (эквивалент деся- тичного числа 10) до F (эквивалент десятичного числа 15). То есть в шестнадцатиричной системе счисления знаки-ци- фры — 0, 1, 2, 9, А, В, С, D, E, F. Число в двоичной системе разбивается на группы по четыре двоичных знака. Одна группа дает 2 4 = 16 комбинаций. Десятичное число 396 в двоичной системе обозначается как 110001100, а в шест- надцатиричной системе как 18С. Соответствие десятичных, двоичных и шестнадцатиричных чисел показано в табл. 1.1. Шестнадцатиричная система счисления применяется для обозначений адресов ячеек оперативной памяти компью- тера, оттенков цвета и дает не такие длинные ряды цифр, Таблица 1.1 Соответствие чисел: десятичные, двоичные, шестнадцатиричные 0 00000000 0 1 00000001 1 2 00000010 2 3 00000011 3 4 00000100 4 5 00000101 5 6 00000110 6 7 00000111 7 8 00001000 8 9 00001001 9 10 00001010 А 11 00001011 В 12 00001100 С 13 00001101 D 14 00001110 Е 15 00001111 F 16 00010000 10 Десятич- ное число Двоичное число Шестнадцати- ричное число Десятич- ное число Двоичное число Шестнадцати- ричное число 24 Глава 1. Информация и кодирование как давала бы двоичная система. Иногда после шестнадца- тиричного числа пишут букву h (hexamal). Например, 321h соответствует десятичному 801 = 3 · 16 2 + 2 · 16 1 + 1 · 16 0 , a FCh — это десятичное число 252 = 15 · 16 1 + 12 · 16 0 1.4. Кодирование информации Для автоматизации работы с различными данными (чис- ловыми, текстовыми, звуковыми и др.) используется прием кодирования — выражение одного типа данных через дан- ные другого типа. Так, естественный человеческий язык представляет собой систему кодирования понятий для вы- ражения мыслей посредством речи, система кодирования Брайля используется у слепых. Разные системы кодирова- ния успешно применяются в различных отраслях техники, науки, экономики. Сигналы в компьютере передаются посредством элект- рических импульсов. Чтобы различать каждую используе- мую цифру десятичной системы, понадобилось бы десять различных сигналов. С технической точки зрения чем меньше видов сигна- лов, тем лучше. Поэтому для электронного вычислительного устройства эффективнее и удобнее двоичная система коди- рования — представление чисел по основанию 2, при кото- ром значения выражаются комбинациями 0 и 1. Простота совершаемых операций и возможность осуществлять авто- матическую обработку информации, реализуя только два знака, дают преимущества, существенно превышающие не- достаток в виде быстрого роста числа разрядов. Кодирование чисел Числовую информацию компьютер обрабатывает в двоич- ной системе счисления. Таким образом, числа в компьютере представлены последовательностью цифр 0 и 1, называемых битами (бит — один разряд двоичного числа). В начале 1980-х гг. процессоры для персональных компьютеров были 8-разрядными, и за один такт работы процессора компьютер мог обработать 8 бит, т.е. максимально обрабатываемое де- сятичное число не могло превышать 11111111 2 (или 255 10 ). Последовательность из восьми бит называют байтом, т.е. 1 байт = 8 бит. Затем разрядность процессоров росла, появи- лись 16-, 32- и, наконец, 64-разрядные процессоры для пер- сональных компьютеров, соответственно возросла и вели- чина максимального числа, обрабатываемого за один такт. 1.4. Кодирование информации 25 Использование двоичной системы для кодирования це- лых и действительных чисел позволяет с помощью 8 разря- дов кодировать целые числа от 0 до 255, 16 бит дает возмож- ность закодировать более 65 тыс. значений. В ЭВМ применяются две формы представления чисел: • естественная форма, или форма с фиксированной за- пятой. В этой форме числа изображаются в виде последова- тельности цифр с постоянным для всех чисел положением запятой, отделяющей целую часть от дробной, например +00456,78800; +00000,00786; –0786,34287. Эта форма неудоб- на для вычислений и применяется только как вспомога- тельная для целых чисел; • нормальная форма, или форма с плавающей точкой. В этой форме число выражается с помощью мантиссы и по- рядка как N = ±M · P ±r , где М — мантисса числа (|M| < 1), r — порядок числа (целое число), Р — основание системы счисле- ния. Приведенные выше числа в нормальной форме будут пред- ставлены как +0,456788 · 10 3 , +0,786 · 10 –2 , –0,3078634287 · 10 5 Нормальная форма представления обеспечивает боль- шой диапазон отображения чисел и является основной в со- временных ЭВМ. Все числа с плавающей запятой хранятся в ЭВМ в нормализованном виде. Нормализованным называ- ют такое число, старший разряд мантиссы которого больше нуля. В памяти ЭВМ для хранения чисел предусмотрены фор- маты: слово — длиной 4 байта, полуслово — 2 байта, двой- ное слово — 8 байт. Разрядная сетка для чисел с плавающей запятой имеет следующую структуру: • нулевой разряд — это знак числа; • с 1-го по 7-й разряд — записывается порядок в двоич- ном коде; • с 8-го по 31-й — указывается мантисса. Кодирование текстовых данных Двоичная система позволяет кодировать и текстовую информацию. Восемь двоичных разрядов достаточно для кодирования 256 различных символов. Первым международным кодом стал стандартный 7-бит- ный код ASCII (American Standard Code for Information Interchange — американский стандартный код для обмена информацией). Появление данного кода в 1963 г. сыграло Глава 1. Информация и кодирование 26 Использование двоичной системы для кодирования це- лых и действительных чисел позволяет с помощью 8 разря- дов кодировать целые числа от 0 до 255, 16 бит дает возмож- ность закодировать более 65 тыс. значений. В ЭВМ применяются две формы представления чисел: • естественная форма, или форма с фиксированной за- пятой. В этой форме числа изображаются в виде последова- тельности цифр с постоянным для всех чисел положением запятой, отделяющей целую часть от дробной, например +00456,78800; +00000,00786; –0786,34287. Эта форма неудоб- на для вычислений и применяется только как вспомога- тельная для целых чисел; • нормальная форма, или форма с плавающей точкой. В этой форме число выражается с помощью мантиссы и по- рядка как N = ±M · P ±r , где М — мантисса числа (|M| < 1), r — порядок числа (целое число), Р — основание системы счисле- ния. Приведенные выше числа в нормальной форме будут пред- ставлены как +0,456788 · 10 3 , +0,786 · 10 –2 , –0,3078634287 · 10 5 Нормальная форма представления обеспечивает боль- шой диапазон отображения чисел и является основной в со- временных ЭВМ. Все числа с плавающей запятой хранятся в ЭВМ в нормализованном виде. Нормализованным называ- ют такое число, старший разряд мантиссы которого больше нуля. В памяти ЭВМ для хранения чисел предусмотрены фор- маты: слово — длиной 4 байта, полуслово — 2 байта, двой- ное слово — 8 байт. Разрядная сетка для чисел с плавающей запятой имеет следующую структуру: • нулевой разряд — это знак числа; • с 1-го по 7-й разряд — записывается порядок в двоич- ном коде; • с 8-го по 31-й — указывается мантисса. Кодирование текстовых данных Двоичная система позволяет кодировать и текстовую информацию. Восемь двоичных разрядов достаточно для кодирования 256 различных символов. Первым международным кодом стал стандартный 7-бит- ный код ASCII (American Standard Code for Information Interchange — американский стандартный код для обмена информацией). Появление данного кода в 1963 г. сыграло Глава 1. Информация и кодирование 26 значительную роль, поскольку до этого различные компью- теры просто не могли взаимодействовать друг с другом. Каждый производитель по-своему представлял символы алфавита, цифры и управляющие коды. В одних только аппаратных средствах корпорации IBM использовалось девять различных наборов кодировки симво- лов. Но взаимодействие между компьютерами стало насто- ятельной необходимостью. В 1961 г. комитет Американско- го национального института стандартов (ANSI), в котором была представлена бо ´льшая часть производителей компью- теров, приступил к разработке международного стандарта. Комитету понадобилось свыше двух лет, чтобы проанали- зировать позиции всех сторон, найти компромисс и завер- шить разработку универсального кода. Код ASCII стал об- щим знаменателем для компьютеров, которые ранее не имели друг с другом ничего общего. Всем буквам, цифрам, знакам препинания и другим символам (управляющим ко- дам) были поставлены в соответствие стандартные число- вые значения. Код ASCII поддерживал 128 символов, вклю- чающих заглавные и строчные символы латиницы, цифры, специальные знаки и управляющие коды. Базовая табли- ца кодировки этого кода, начиная с 32-го кода, приведена в табл. 1.2. Коды 031 использованы в данной таблице как служебные и управляющие. Затем 7-битный код ASCII был расширен до 256 симво- лов и принят как 8-битный международный стандарт ASCII-2, причем коды с 128 по 256 этого стандарта были задействованы для национальных языков разных стран. Для СССР в этой области была введена национальная ко- дировка КОИ-8 (код обмена информацией, восьмизнач- ный). Код ASCII остался одной из немногих технологий, которой удалось успешно пройти сквозь десятилетия и до- жить до наших дней. Сегодня на основе кода ASCII выпус- кается оборудование стоимостью в миллиарды долларов, большинство операционных систем до сих пор совместимо с ASCII. Существует несколько различных кодовых таблиц для русского алфавита. Так, кодировка Windows-1251 была вве- дена компанией Microsoft и, учитывая широкое распрост- ранение операционной системы Windows и других про- граммных продуктов компании в России, она получила широкое распространение и используется в персональных компьютерах (ПК), работающих на этой платформе. Текст, 27 1.4. Кодирование информации созданный в одной кодировке, совершенно по-другому вы- глядит и не читается в другой. Например, коду 222 соответ- ствуют разные символы в разных кодировках: • КОИ-8 (операционная система UNIX) — ч; • Windows-1251 (операционная система Windows) — Ю; • ISO (стандарт для русского языка международной ор- ганизации по стандартизации ISO) — О. Последним стандартом в области кодирования текстовой информации считается 16-разрядный универсальный меж- Таблица 1.2 Базовая таблица кодировки ASCII 32 пробел 56 8 80 Р 104 h 33 ! 57 9 81 Q 105 i 34 ” 58 : 82 R 106 j 35 # 59 ; 83 S 107 k 36 $ 60 < 84 Т 108 l 37 % 61 = 85 U 109 m 38 & 62 > 86 V 110 n 39 ‘ 63 ? 87 W 111 o 40 ( 64 @ 88 X 112 p 41 ) 65 А 89 Y 113 q 42 * 66 В 90 Z 114 r 43 + 67 С 91 [ 115 s 44 , 68 D 92 \ 116 t 45 - 69 Е 93 ] 117 u 46 70 F 94 ^ 118 v 47 / 71 G 95 _ 119 w 48 0 72 Н 96 ` 120 x 49 1 73 I 97 а 121 y 50 2 74 J 98 b 122 z 51 3 75 К 99 с 123 { 52 4 76 L 100 d 124 | 53 5 77 М 101 е 125 } 54 6 78 N 102 f 126 55 7 79 О 103 g 127 Код Символ Код Символ Код Символ Код Символ 28 Глава 1. Информация и кодирование созданный в одной кодировке, совершенно по-другому вы- глядит и не читается в другой. Например, коду 222 соответ- ствуют разные символы в разных кодировках: • КОИ-8 (операционная система UNIX) — ч; • Windows-1251 (операционная система Windows) — Ю; • ISO (стандарт для русского языка международной ор- ганизации по стандартизации ISO) — О. Последним стандартом в области кодирования текстовой информации считается 16-разрядный универсальный меж- Таблица 1.2 Базовая таблица кодировки ASCII 32 пробел 56 8 80 Р 104 h 33 ! 57 9 81 Q 105 i 34 ” 58 : 82 R 106 j 35 # 59 ; 83 S 107 k 36 $ 60 < 84 Т 108 l 37 % 61 = 85 U 109 m 38 & 62 > 86 V 110 n 39 ‘ 63 ? 87 W 111 o 40 ( 64 @ 88 X 112 p 41 ) 65 А 89 Y 113 q 42 * 66 В 90 Z 114 r 43 + 67 С 91 [ 115 s 44 , 68 D 92 \ 116 t 45 - 69 Е 93 ] 117 u 46 70 F 94 ^ 118 v 47 / 71 G 95 _ 119 w 48 0 72 Н 96 ` 120 x 49 1 73 I 97 а 121 y 50 2 74 J 98 b 122 z 51 3 75 К 99 с 123 { 52 4 76 L 100 d 124 | 53 5 77 М 101 е 125 } 54 6 78 N 102 f 126 55 7 79 О 103 g 127 Код Символ Код Символ Код Символ Код Символ 28 Глава 1. Информация и кодирование дународный код Unicode (UNIversal CODE), позволяющий кодировать 65 536 различных символов. Unicode охватыва- ет 28 тыс. букв, знаков, слогов и иероглифов национальных языков мира, и 30 тыс. мест в нем зарезервировано. Кодирование графических данных Графическое изображение при его увеличении может быть представлено в виде мельчайших точек, которые обра- зуют характерный узор — растр. Таким образом, любое изо- бражение можно закодировать с помощью координат точек, имеющих индивидуальную яркость. Любое черно-белое изображение можно передать с помощью 256 градаций се- рого цвета (от белого до черного), тем самым яркость каж- дой точки черно-белого изображения можно закодировать 8-разрядным двоичным числом — одним байтом. Для кодирования цветных графических изображений применяется принцип декомпозиции (разложения) цвета на основные составляющие: красный (Red), зеленый (Green) и синий (Blue). Этот принцип базируется на том, что любой цвет можно получить путем смешения трех указанных цветов. Система кодирования по первым буквам названий основ- ных смешиваемых цветов называется системой RGB и опи- сывает поведение аддитивной цветовой модели, свойства ко- торой иллюстрируют при помощи цветовых кругов (рис. 1.1). Если для кодирования яркости каждого составляющего цве- та использовать 256 градаций (8-разрядное число), как это принято для черно-белого изображения, то для кодирова- ния цветной точки растра достаточно 24-разрядного двоич- ного числа. Такой режим представления цветной графики называет- ся полноцветным (True Color) и позволяет зафиксировать около 16,5 млн различных цветовых оттенков при помощи 3 байт. Каждому из основных цветов можно поставить в со- ответствие дополнительный цвет, т.е. цвет, дополняющий основной до белого. К дополнительным цветам относятся: голубой (Cyan), пурпурный (Magenta) и желтый (Yellow). Принцип декомпозиции применим и для дополнительных цветов, т.е. любой цвет может быть получен путем их сме- шения. Такой метод кодирования цвета применяется в по- лиграфии, где используется дополнительно еще и четвертая краска — черная (Вlack). Эта система кодирования носит название СMYK (черный цвет указан в названии последней буквой своего названия для того, чтобы не путать его в со- 1.4. Кодирование информации 29 кращениях и аббревиатурах с синим — Blue). Данный режим представления графики использует 32 разряда и тоже назы- вается полноцветным (True Color). Если уменьшить количе- ство двоичных разрядов, используемых для кодировки каж- дой точки, в два раза, то можно сократить объем данных, но диапазон цветов при этом уменьшится до 65 536 оттен- ков. Такое кодирование цветной графики 16-разрядными двоичными числами называется режимом High Color. При работе с цветной графикой применяется индексный метод кодирования. Здесь код каждой точки растра хранит не цвет, а только его номер (индекс) в некоей справочной таблице, называемой палитрой, которая должна обязатель- но прикладываться к графическим данным. Графическая информация на экране дисплея формиру- ется из точек (пикселей). Пиксел — от picture element, что означает элемент изображения. В современных компьюте- рах разрешающая способность (количество точек на экране дисплея) зависит от видеоадаптера и может меняться про- граммно. Цветные изображения могут иметь различные режимы: 16 цветов, 256 цветов, 65 536 цветов (High Color), 16 777 216 цветов (True Color). Таким образом, например, для режима High Color на один пиксель приходится 16 бит памя- ти и при разрешающей способности экрана 800 600 точек требуемый для хранения его изображения объем видеопамя- ти составит V = 2 байта · 480000 = 960 000 байт = 937,5 Кбайт. Аналогично рассчитывается объем видеопамяти, необходи- мый для хранения битовой карты изображения при других видеорежимах. В видеопамяти компьютера хранится бито- Рис. 1.1. Система RGB в виде цветовых кругов Синий Красный Пурпурный Голубой Белый Желтый Зеленый 30 |