Символьный подход к измерению информации

 

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

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

Конечный упорядоченный набор знаков, используемых для передачи информации, называется алфавитом. Последовательность символов алфавита - словом. Сообщение, как правило, представляет собой последовательность слов. Довольно часто передаваемая информация кодируется. Кодирование информации – переход от одной формы представления информации к другой, более удобной для хранения, обработки или передачи.

Способ кодирования зависит от цели, ради которой оно осуществляется: сокращение записи, засекречивание (шифровка) информации, удобство обработки и т.д.

Правило отображения одного алфавита на другой называется кодом, а сама процедура - перекодировкой сообщения. Например, при передаче сообщения по телеграфному каналу используется азбука Морзе. При этом каждой букве алфавита ставится в соответствие определённая последовательность точек и тире (А ® · - ; Я ® · - · - и т.д.).

В технических устройствах хранения, передачи и обработки информации для её кодирования часто используют алфавиты, содержащие лишь два различных символа. Например, “плюс”, ”минус” (+, -) или 1 и 0. Наличие всего двух символов значительно упрощает электрические схемы с электронными переключателями, которые принимают только два состояния - они либо проводят ток, либо нет. Алфавит из двух символов 1 и 0 называют двоичным и говорят о двоичном представлении информации (кодировании информации в двоичном коде). При таком представлении буквы, цифры и любые другие символы изображаются двоичными словами - последовательностями из нулей и единиц.

Как известно, в качестве единицы измерения количества информации принят 1 бит (англ. bitbinary, digit — двоичная цифра). Бит — один символ двоичного алфавита: 0 или 1. Наряду с битом получила распространение укрупнённая единица - байт, равный 8 битам. Из битов складывается все многообразие данных, которые обрабатывает компьютер. Комбинируя восемь нулей и единиц различными способами, можно получить 256 различных комбинаций. Этого количества достаточно, чтобы каждому символу поставить в соответствие свою неповторимую комбинацию из восьми нулей и единиц. Эти комбинации определяются кодовой таблицей ASCII (American Standart Code for Information Interchange - американский стандартный код для обмена информацией).

Одним байтом кодируется любой печатный знак (буква, цифра, любой другой символ). Например, число 7 выражается байтом 00000111; буква L 01001100; знак "плюс" имеет двоичный код 00101011. Байт — один символ, который представляет комбинацию из 8 бит.

Порядковый номер символа в таблице ASCII называют десятичным кодом этого символа. Чтобы его определить

 

ASCII
  @ P ` p А Р А
! A Q A q Б С Б
B R B r В Т В
# C S C s Г У Г
$ D T D t Д Ф Д
% E U E u Е Х Е
& F V F v Ж Ц Ж
G W G w З Ч З
( H X H x И Ш И
) I Y I y К Щ Й
* : J Z J z Л Ъ К
+ ; K [ K { М Ы Л
, < L \ L | Н Ь М
- = M ] M } О Э Н
. > N ^ N ~ П Ю О
/ ? O _ O   Р Я П

 

необходимо сложить номер строки с номером столбца, которые соответствуют выбранному символу. Например, десятичный код цифры 7 равен 55 (7+48), а символа % - 37 (5+32). Таким образом, каждый символ имеет десятичный и двоичный код. Первые 32 символа являются управляющими и предназначены, в основном, для передачи различных команд.

В кодовой таблице ASCII первые 128 символов (с номерами от 0 до 127) являются стандартными: буквы латинского алфавита, цифры, знаки препинания и другие (специальные) символы. Остальные (128 кодов) используются для кодировки букв национальных алфавитов.

Буквы располагаются в алфавитном порядке, а цифры по возрастанию значений. Например, буква i имеет десятичный код 105. Что зашифровано последовательностью десятичных кодов: 108 105 110 107 ?

Для расшифровки не нужно обращаться к таблице, вспомним лишь порядок букв латинского алфавита: …i j k l m n o …(соответственно, коды этих букв будут от 105 до 111). Поэтому это будет слово "link".

Заметим, что между десятичным кодом строчной буквы латинского алфавита и соответствующей кодом заглавной буквы разница равна 32. Если букве "c" соответствует десятичный код 99, то код буквы "C" будет 67=99-32.

К сожалению, в настоящее время существуют несколько различных кодировок кириллицы (КОИ8-Р, Windows, MS-DOS, Macintosh), что вызывает дополнительные трудности при работе с русскоязычными документами. Хронологически одним из первых стандартов кодирования русских букв на компьютерах был КОИ8 ("Код обмена информацией, 8-битный"). Эта кодировка применялась еще в 70-ые годы на компьютерах серии ЕС ЭВМ, а с середины 80-х стала использоваться в первых русифицированных версиях операционной системы UNIX. Наиболее распространенной в настоящее время является кодировка Microsoft Windows, обозначаемая сокращением CP1251 ("CP" означает "Code Page", "кодовая страница").
От начала 90-ых годов, времени господства операционной системы MS DOS, остается кодировка CP866. В конце 90-ых годов появился новый международный стандарт Unicode, который отводит под один символ не один байт, а два, и поэтому с его помощью можно закодировать не 256, а 65536 различных символов. Полная спецификация стандарта Unicode включает в себя все существующие, вымершие и искусственно созданные алфавиты мира, а также множество математических, музыкальных, химических и прочих символов.
Если алфавит состоит из двух символов (1 и 0), то вероятности их появления равны 0,5 и количество информации одного такого символа будет H=log22=1 бит.

Т.о. количество информации (в битах), заключенное в двоичном слове, равно числу двоичных знаков в нем.

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

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

  • 1 Килобайт (Кбайт) = 1024 байт = 210 байт,
  • 1 Мегабайт (Мбайт) = 1024 Кбайт = 220 байт,
  • 1 Гигабайт (Гбайт) = 1024 Мбайт = 230 байт.
  • 1 Терабайт (Тбайт) = 1024 Гбайт = 240 байт

Одна дискета может хранить 1,5 Мбайта, CD диск имеет ёмкость около 700 Мбайт.

При двоичном кодировании для характеристики скорости передачи информации используется единица скорости телеграфирования 1бод = 1бит/c. Названа в честь французского изобретателя кодировки символов для телетайпов Эмиля Бодо. Используются более крупные единицы:

§ Килобит в секунду, кбит/с — единица измерения скорости передачи информации, равная 1000 бит в секунду.

§ Мегабит в секунду, 1 Мбит/с = 106 = 1000000 (миллион) бит информации, переданные от источника к получателю за одну секунду.

 

3. Некоторые сведения о системах счисления.

 

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

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

Существуют позиционные и непозиционные системы счисления.

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

В позиционных системах счисления вес каждой цифры изменяется в зависимости от ее положения (позиции) в последовательности цифр, изображающих число. Например, в числе 757,7 первая семерка означает 7 сотен, вторая – 7 единиц, а третья – 7 десятых долей единицы. Сама же запись числа 757,7 означает сокращенную запись выражения

700 + 50 + 7 + 0,7 = 7×102 + 5×101 + 7×100 + 7×10-1 = 757,7.

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

 

Основание Название Алфавит
Двоичная 0 1
Троичная 0 1 2
Восьмеричная 0 1 2 3 4 5 6 7
Шестнадцатеричная 0 1 2 3 4 5 6 7 8 9 A B C D E F

 

Если n – основание системы не большее десяти, то в алфавите используются n первых арабских цифр. Если основание превышает 10, то в качестве дополнительных цифр выступают буквы латинского алфавита по порядку.

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

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

an-1 qn-1 + an-2 qn-2+ ... + a1 q1 + a0 q0 + a-1 q-1 + ... + a-m q-m,

где ai – цифры системы счисления; n и m – число целых и дробных разрядов, соответственно. Пусть число 102 записано в троичной системе счисления.

Тогда (102)3 =1×32+0×31+2×30. Выполнив действия, получим значение троичного числа в десятичной системе счисления. Т.е. (102)3 = (11)10.

В компьютере информация представляется в двоичном виде (в битовой форме). Для перевода десятичного числа в двоичную систему счисления необходимо представить его в виде суммы степеней числа 2. Например,

(76)10 = 64 + 8 + 4 = 26 + 23 + 22 = (1001100)2.

Можно воспользоваться последовательным делением на 2 с выделением остатка. Например, переведем число 58 в троичную систему счисления. После знака равенства записывается целая часть частного, а в скобках указывается остаток.

58 : 3 = 19 (1)

19 : 3 = 6 (1)

6 : 3 = 2 (0)

2 : 3 = 0 (2) ­

Окончательный результат такой: 58=20113.

(201,25)=27+26+23+20+2-2=(11001001,01)2
Для перевода дроби в двоичную систему счисления преобразуют отдельно ее целую и дробную части. Причем дробная часть должна представляться суммой

a×2-1 + b×2-2 + c×2-3 + ...

где a,b,c,... неизвестные коэффициенты, принимающие значения либо 0, либо 1, которые и надо найти. Применяют алгоритм умножения на 2. Например, для перевода 0,375 в двоичную систему счисления, имеем:

2×0,375 = 0,75 (целая часть равна 0)

2×0,75 = 1,5 (целая часть равна 1)

2×0,5 = 1,0 (целая часть равна 1)

Этот процесс продолжается до тех пор, пока дробная часть не окажется равной нулю. Тогда имеем (0,375)10= (0,011)2. Проверьте, что (0,625)10 = 0,1012

Заметим, что этот процесс может оказаться и бесконечным. Например, число 0,1 при переводе в двоичную систему счисления примет вид (0,1)10= (0,00011001100...)2. Переведем число 0,123 в пятеричную систему счисления.

0,123·5=0,615 0,615·5=3,075 0,075·5=0,375 0,375·5=1,875 0,875·5=4,375

Далее пойдет повторение двух последних цифр. Результат получился таким:

0,123=0,030(14)5.

В компьютерах используют двоичную систему потому, что она имеет ряд преимуществ перед другими системами:

§ для ее реализации нужны технические устройства с двумя устойчивыми состояниями (есть ток — нет тока), а не с десятью, — как в десятичной;

§ представление информации посредством только двух состояний надежно и помехоустойчиво;

§ двоичная арифметика намного проще десятичной.

Недостаток двоичной системы — быстрый рост числа разрядов, необходимых для записи чисел.

Рассмотрим пример смешанной системы счисления - двоично-десятичной системы счисления.

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

 

DEC
BIN

 

В этой таблице каждой десятичной цифре поставлено в соответствие равное ей четырехзначное двоичное число (нули слева – незначащие). Например, десятичное число 58236,37 в двоично-десятичной форме запишется так: 101 10001 0010 0011 0101,0011 01112-10 . Первый слева ноль у целого числа является незначащей цифрой, поэтому его можно не писать.

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

11 1000 0010 1001 0011,0101 1001 1000 2-10 → 3823,598

Отметим важное обстоятельство: между данными десятичным и двоично-десятичным числом нельзя поставить знак равенства. Двоично-десятичное представление – это всего лишь двоичный код для представления десятичного числа, но никак не равное ему значение в двоичной системе счисления. Выполнение арифметических вычислений над десятичными числами, представленными в двоично-десятичной форме, весьма затруднительны. Тем не менее, в истории ЭВМ известны такие примеры. В первой ЭВМ под названием ENIAC использовалась двоично-десятичная система.

Современные компьютеры производят вычисления в двоичной системе счисления. Однако для представления компьютерной информации нередко используются двоично-восьмеричная и двоично-шестнадцатеричная системы.

Двоично-восьмеричная система.В следующей таблице представлено соответствие между восьмеричными цифрами (OCT) и трехзначными двоичными (BIN) числами (двоичными триадами), равными по значению этим цифрам.

 

OCT
BIN

 

Записать восьмеричное число в двоично-восьмеричном виде – это значит заменить каждую восьмеричную цифру на соответствующую двоичную триаду. Например: 3517,28→11 101 001 111,010 2-8.

А теперь переведем данное восьмеричное число в двоичную систему счисления. Для этого сначала его переведем в десятичную систему, а потом из десятичной в двоичную систему счисления. Вот что получается:

3517,2 8 = 1871,25=11101001111,01 2

Но это тот же самый двоичный код, что записан выше в двоично-восьмеричной системе! Мы пришли к следующему результату: двоично-восьмеричное число равно значению данного восьмеричного числа в двоичной системе счисления.

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

Двоично-шестнадцатеричная система счисления. В следующей таблице представлено соответствие между шестнадцатеричными (HEX) цифрами и четырехзначными двоичными числами (двоичными тетрадами), равными по значению этим цифрам.

 

DEC ...
HEX ... A B C D E F
BIN ...

 

Записать шестнадцатеричное число в двоично-шестнадцатеричном виде – это значит заменить каждую шестнадцатеричную цифру на соответствующую двоичную тетраду. Например: С81F,1D16 → 1100 1000 0001 1111,0001 11012-16

Переведем данное шестнадцатеричное число сначала в десятичную систему счисления, а затем в двоичную систему. Получим:

С81F,1D16 = 51231,875 = 1100 1000 0001 1111,0001 11012

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

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

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

Задача. Перевести число 1369,75 в двоичную, восьмеричную и шестнадцатеричную системы счисления.

Наиболее рациональный способ решения задачи следующий. Нужно перевести это число в одну из трех систем с основанием 2, 8 или 16, а затем, используя связь между ними через смешанное представление, выполнить перевод в две другие системы путем перекодировки по таблицам 2-8 и 2-16.

1) Переведем число в восьмеричную систему путем последовательного деления на 8 целой части и последовательного умножения на 8 дробной части числа. Получим:

1369,75=2531,68

2) Путем перекодировки по двоично-восьмеричной таблице переведем это число в двоичную систему счисления:

2531,68=10 101 011 001,1102

3) Разделив цифры двоичного числа на тетрады (влево и вправо от запятой), переведем двоичное число в шестнадцатеричную систему, используя двоично-шестнадцатеричную таблицу:

0101 0101 1001,11002=559,С16

Все арифметические действия в компьютере выполняются в двоичной системе счисления. Законы двоичной арифметики очень просты:

 

Сложение 0+0=0 1+0=1 0+1=1 1+1=10
Умножение 0´0=0 1´0=0 0´1=0 1´1=1

 

Перенос в старший разряд единицы возникает, если результат сложения цифр одноименных разрядов больше 1.

Например,

         
 
+    
 

Цифрами сверху обозначены значения, переносимые при сложении в соседний слева разряд. Проверьте результаты действий: a) 11102 + 1012 = 100112 ;

б) 1012 ´ 112 = 11112.

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








Дата добавления: 2015-11-18; просмотров: 1569;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.049 сек.