Кодирование и декодирование числовой информации

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

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

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

523 = 5 * 102 + 2 * 101+ 3 * 100

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

XXVIII=10 + 10 + 5 + 1 + 1 + 1

Римская система счисления имеет отклонения от непозиционной системы, т.к. в числах LX и XL символ Х принимает два значения: +10 и - 10.

Двоичная система счисления является позиционной, имеет основание 2 и использует для представления информации всего две цифры 0 и 1.

Существуют правила перевода чисел из одной системы счисления в другую. Схема перевода числа из системы счисления с основанием P в десятичную

amam-1...a1a0a -1...a -s= am*Pm+am-1*Pm-1+...+a1*P1+a0*P0+a -1*P-1+...a -s*P -s .

Например,

(100011)2 = 1*25+0*24+0*23+0*22+1*21+1*20 = (35)10.

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

 

: = остаток
(35)10 = (100011)2
17

: = остаток
: = остаток
: = остаток
: = остаток
: = остаток

При переводе дробной части числа из десятичной системы счисления в систему с основанием Р дробные части умножаются на основание Р и записывается целые части произведения. Например, для числа 0,8125

(0,8125)10=(0,1101)2.
0,

 
1,
 
1,
 
0,
 
1,

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

Так как, числа 8 и 16 являются степенью числа 2 (23 и 24), то перевод целых чисел из двоичной систему в 8-ричную и 16-ричную и обратно очень прост. Двоичное число разбивается на триады (по 3 знака) или тетрады (по 4 знака), и каждая группа кодируется отдельно.

Таблица 1.2.

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

Сложение Вычитание Умножение
0 + 0 = 0 0 - 0 = 0 0 х 0 = 0
0 + 1 = 1 1 - 0 = 1 0 х 1 = 0
1 + 0 = 0 1 - 1 = 0 1 х 0 = 0
1 + 1 = 10 10 - 1 = 1 1 х 1 = 1

 

Пример 1.Используя таблицу перевода, перевести числа из одной системы счисления в другую.

(13)10 = (1101)2 = (15)8 = (D)16; Перевод числа 11100111010001 из двоичной в десятичную (по правилу) (11100111010001)2=(14801)10 , в восьмиричную (по таблице) (011 100 111 010 001)2 = (34721)8 , в шестнадцатиричную (по таблице) (0011 1001 1101 0001)2 = (39D1)16 .
Р=10

Р=2 Р=8 Р=16
A
B
C
D
E
F

 

Пример 2:

+ 11 - 11 х 11 : 11

Среди логических функций наибольшее распространение получили инверсия (отрицание, NOT, НЕ), конъюнкция (AND или логическое умножение) и дизъюнкция (OR или логическое сложение) (табл.1.3)


Таблица 1.3.

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

x y НЕ x (NOT) x И y (AND) x ИЛИ y (OR)

 

Пример 3:

10010 AND 11 = 10

10010 OR 1 = 10011