Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика 1 семестр.doc
Скачиваний:
33
Добавлен:
10.05.2015
Размер:
1.62 Mб
Скачать

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

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

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

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

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

:

2

=

17

остаток

1

1

(35)10 = (100011)2

7

:

2

=

8

остаток

1

8

:

2

=

4

остаток

0

4

:

2

=

2

остаток

0

2

:

2

=

1

остаток

0

1

:

2

=

0

остаток

1

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

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

0,

8125

2

1,

6250

2

1,

2500

2

0,

5000

2

1,

0000

При программировании иногда используют восьмиричную (Р=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

1

1

1

1

2

10

2

2

3

11

3

3

4

100

4

4

5

101

5

5

6

110

6

6

7

111

7

7

8

1000

10

8

9

1001

11

9

10

1010

12

A

11

1011

13

B

12

1100

14

C

13

1101

15

D

14

1110

16

E

15

1111

17

F

Пример 2:

10010

10010

10010

10010

+ 11

- 11

х 11

: 11

10101

1111

110110

110

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

Таблица 1.3.

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

x

y

НЕ x

(NOT)

x И y

(AND)

x ИЛИ y

(OR)

0

0

1

0

0

0

1

1

0

1

1

0

0

0

1

1

1

0

1

1

Пример 3:

10010 AND 11 = 10

10010 OR 1 = 10011