Прямой код

Информация: связь с неопределенностью, формула Шеннона, единицы измерения, элементы алгебры Буля, системы счисления (непозиционные системы, перевод из одной системы в другую, обратный перевод)

Формула Шеннона

(2.2)


где I - количество информации;
N - количество возможных событий;
рi - вероятность i-го события.

Бит — слишком мелкая еденица измерения. На практике чаще применяются более крупная еденица — байт равная восьми битам. Именно восемь битов требуется для того, чтобы закодировать любой из 256 символов алфавита клавиатуры компьютера (256=28).

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

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

В последнее время в связи с увелечением объёмов информации входят в употребление такие производные еденицы как:

  • 1 Терабайт (Тбайт) = 1024 Гбайт = 240 байт
  • 1 Петабайт (Пбайт) = 1024 Тбайт = 250 байт

 

Базовыми элементами, которыми оперирует алгебра логики, являются высказывания. Высказывания строятся над множеством {B, , , , 0, 1}, где B — непустое множество, над элементами которого определены три операции:

· отрицание (унарная операция),

· конъюнкция (бинарная),

· дизъюнкция (бинарная),

· а также константы — логический ноль 0 и логическая единица 1.

· Дизъю́нкт — пропозициональная формула, являющаяся дизъюнкцией одного или более литералов (например ). Конъюнкт — пропозициональная формула, являющаяся конъюнкцией одного или более литералов (например ).

· Простейшим и наиболее широко применяемым примером такой алгебраической системы является множество B, состоящее всего из двух элементов:

· B = { Ложь, Истина }

· Как правило, в математических выражениях Ложь отождествляется с логическим нулём, а Истина — с логической единицей, а операции отрицания (НЕ), конъюнкции (И) и дизъюнкции (ИЛИ) определяются в привычном нам понимании. Легко показать, что на данном множестве B можно задать четыре унарные и шестнадцать бинарных отношений и все они могут быть получены через суперпозицию трёх выбранных операций.

· Опираясь на этот математический инструментарий, логика высказываний изучает высказывания и предикаты. Также вводятся дополнительные операции, такие как эквивалентность («тогда и только тогда, когда»), импликация («следовательно»), сложение по модулю два («исключающее или»), штрих Шеффера , стрелка Пирса и другие.

· Логика высказываний послужила основным математическим инструментом при создании компьютеров. Она легко преобразуется в битовую логику: истинность высказывания обозначается одним битом (0 — ЛОЖЬ, 1 — ИСТИНА); тогда операция приобретает смысл вычитания из единицы; — немодульного сложения; & — умножения; — равенства; — в буквальном смысле сложения по модулю 2 (исключающее Или — XOR); — непревосходства суммы над 1 (то есть A B = (A + B) <= 1).

· Впоследствии булева алгебра была обобщена от логики высказываний путём введения характерных для логики высказываний аксиом. Это позволило рассматривать, например, логику кубитов, тройственную логику (когда есть три варианта истинности высказывания: «истина», «ложь» и «не определено») и др.

· Восьмери́чная систе́ма счисле́ния — позиционная целочисленная система счисления с основанием 8. Для представления чисел в ней используются цифры от 0 до 7.

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

 

Двоичная система счисления используется для кодирования дискретного сигнала, потребителем которого является вычислительная техника. Такое положение дел сложилось исторически, поскольку двоичный сигнал проще представлять на аппаратном уровне. В этой системе счисления для представления числа применяются два знака – 0 и 1.

 

Шестнадцатеричная система счисления используется для кодирования дискретного сигнала, потребителем которого является хорошо подготовленный пользователь – специалист в области информатики. В такой форме представляется содержимое любого файла, затребованное через интегрированные оболочки операционной системы, например, средствами Norton Commander в случае MS DOS. Используемые знаки для представления числа – десятичные цифры от 0 до 9 и буквы латинского алфавита – A, B, C, D, E, F.

 

Десятичная система счисления используется для кодирования дискретного сигнала, потребителем которого является так называемый конечный пользователь – неспециалист в области информатики (очевидно, что и любой человек может выступать в роли такого потребителя). Используемые знаки для представления числа – цифры от 0 до 9.

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

Непозиционной системой счисления является самая простая система с одним символом (палочкой). Для изображения какого-либо числа в этой системе надо записать количество палочек, равное данному числу. Например, запись числа 12 в такой системе счисления будет иметь вид: IIIIIIIIIIII. Эта система неэффективна, так как форма записи очень громоздка.

К непозиционной системе счисления относится и римская, символы алфавита которой и обозначаемое ими количество представлены в таблице.

Римские цифры I V X L С D М
Значение (обозначаемое количество)

 

Представление чисел в ЭВМ. Примеры записи. Положительные и отрицательные числа в двоичной системе. Прямой и обратный код. Мантисса и порядок. Запись основания десятичной системы счисления в ЭВМ.

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

  • естественная форма или форма с фиксированной запятой (точкой);
  • нормальная форма или форма с плавающей запятой (точкой);

Пример:

(естественная форма) 452,34 = 452340*10-3 = 0,0045234*105 = 0,45234*103(нормальная форма)

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

X10 → X2 = M1 × [102]r

После этого осуществляется ещё одна важная процедура:

  • мантисса с её знаком заменяется кодом мантиссы с её знаком;
  • порядок числа с его знаком заменяется кодом порядка с его знаком.

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

Существуют следующие коды двоичных чисел:

  • Прямой код;
  • Обратный код;
  • Дополнительный код.

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

Прямой код

Представление числа в привычной форме "знак"-"величина", при которой старший разряд ячейки отводится под знак, а остальные - под запись числа в двоичной системе, называется прямым кодом двоичного числа. Например, прямой код двоичных чисел 1001 и -1001 для 8-разрядной ячейки равен 00001001 и 10001001 соответственно.

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

Например,

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

Прямой код двоичного числа(а это либо мантисса, либо порядок) образуется по такому алгоритму:

1.Определить данное двоичное число - оно либо целое (порядок), либо правильная дробь (мантисса).

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

3.Если это целое и положительное двоичное число, то вместе с добавлением 0 в старший разряд число превращается в код. Для отрицательного двоичного числа перед ним ставится единица.

Например,