77930

Системы счисления. Кодирование информации

Лекция

Информатика, кибернетика и программирование

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

Русский

2015-02-05

253 KB

17 чел.

Модуль 1.

АРИФМЕТИКО-ЛОГИЧЕСКИЕ ОСНОВЫ  ИНФОРМАТИКИ

Лекция 2. Системы счисления. Кодирование информации

Содержание лекции

[1] Лекция 2. Системы счисления. Кодирование информации

[2] Содержание лекции

[2.1] Системы счисления

[2.1.1] Позиционные системы счисления

[2.2] Формы представления чисел

[2.3]
Системы счисления, используемые при работе с ЭВМ

[2.4]
Перевод чисел из одной системы счисления в другую

[2.5]
Прямой, обратный и дополнительный коды чисел

[2.5.1] Сложение чисел в прямом и дополнительном коде

[2.6]
Варианты представления информации в ПК

[3] Вопросы для контроля знаний

Системы счисления

Информация в ЭВМ кодируется, как правило, в двоичной или в двоично-десятичной системе  счисления.

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

Символы, используемые для записи чисел, называются цифрами. Множество цифр образует алфавит системы счисления. Часто в алфавит входит и знак “,” (запятая).

В зависимости от способа изображения чисел системы счисления делятся на позиционные и непозиционные.

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

Система счисления называется позиционной, если одна и та же цифра имеет различные значения, определяемые позицией цифры в последовательности цифр, изображающей число. Количество (Р) различных цифр, используемых для изображения числа в позиционной системе счисления, называется основанием системы счисления. Значения цифр лежат в пределах от 0 до Р-1. Примером позиционной системы счисления может служить привычная нам арабская десятичная система.

Позиционные системы счисления

Любое число C в позиционной системе счисления с основанием Р может быть представлено в виде полинома:

C= Cn Pn +Cn-1 Pn-1 +…+C1 P1 +C0 P0 +C-1 P-1 +…+C-m P-m ,                     

или

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

положительные значения индексов - для целой части числа (n разрядов);

отрицательные значения - для дробной (m разрядов).

Формы представления чисел

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

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

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

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

                       C = Cn Cn-1 …C1 C0, C-1… C-m                                     

 Запятая опускается, если дробная часть отсутствует. Позиции цифр в такой записи называются разрядами. Разряды нумеруются влево от запятой, начиная с нуля: 0-й,1-й,...(n-1)-й, n-й; и вправо от запятой: 1-й, 2-й,...(m-й).

Значение Ci  цифры ci  в позиционных системах счисления определяется номером разряда:

                       Ci = сi Рi.

Величина Pi  называется весом, или значением, i-го разряда. В позиционных системах счисления значения соседних разрядов отличаются в P раз: левый в P раз больше правого.

Пример 1.  Десятичная система счисления.

Р=10.

Цифры: 0,1,2,3,4,5,6,7,8,9.

723,1910 =7102 +2101 +3100 +110-1 +910-2 .

Пример 2. Двоичная система счисления.

Р=2.

Цифры: 0,1.

101110,1012 = 125 +024 +123 +122 +121 +020 +12-1 +02-2 +12-3 

Эта форма наиболее проста, естественна, но имеет небольшой диапазон представления чисел и поэтому не всегда приемлема в вычислениях.

Максимальное целое число, которое может быть представлено в n разрядах:

   .

Минимальное значащее (не равное 0) число, которое можно записать в m разрядах дробной части:

   .

Имея в целой части числа n, а в дробной части m разрядов, можно записать всего P n+m   разных чисел.

Пример 3. Двоичная система счисления.

Р = 2.

n = 10, m = 6.

Возможное для представления значение N лежит в пределах:

0,015 < N < 1024.

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

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

 ,

 где M - мантисса числа (М <1);

 r - порядок числа (r - целое число);

 P - основание системы счисления.

Пример 4. Приведем несколько равенств: левая часть равенства – число в естественной форме, правая часть – в нормальной форме. Для записи естественной формы используются 5 разрядов в целой части и 5 разрядов в дробной части.

+00721,35500 = +0,721355103;   

+00000,00328 = +0,32810-2;

-10301,20260 = -0,103012026105.

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

Пример 5. Диапазон значащих чисел в системе счисления с основанием Р при наличии m разрядов у мантиссы и s разрядов у порядка (без учета знаковых разрядов у порядка и мантиссы) будет:

.

При Р = 2, m = 10 и s = 6 диапазон чисел простирается примерно от 10-19 до  1019. (Сравните примером 3).


Системы счисления, используемые при работе с ЭВМ 

 Двоичная система счисления

Основание Р = 2.

Алфавит включает две двоичные цифры: 0, 1.

Любое число C = Cn Cn-1C1 C0  C-1 C-m   есть сумма степеней числа Р = 2,  

C = Cn 2n +Cn-1 2n-1 +…+C1 21 +C0 20 +C-1 2-1 +…+C-m 2-m          

Пример 6.  101011,112 =125 + 024 + 123 + 022  +121 + 120 +

                      +12-1 + 12-2 = 32+8+2+1+0,5+0,25=43,7510.

Веса разрядов в двоичной системе счисления равны 1, 4, 8,16,... влево от запятой и 0,5; 0,25; 0,125; 0,625;... вправо от запятой.

 Шестнадцатеричная система счисления

При программировании используется также шестнадцатеричная система счисления. Для изображения цифр, больших 9, в шестнадцатеричной системе счисления применяются латинские буквы A, B, C, D, E, F. Изображения первых шестнадцати чисел в десятичной, двоичной и шестнадцатеричной системах счисления приведены в табл. 2.

           Таблица кодов в различных системах счисления                                    Таблица 2

Десятичная система

Двоичная система

Шестнад-цатеричная

система

Десятичная система

Двоичная система

Шестнад-цатеричная система

0

0000

0

8

1000

8

1

0001

1

9

1001

9

2

0010

2

10

1010

А

3

0011

3

11

1011

B

4

0100

4

12

1100

C

5

0101

5

13

1101

D

6

0110

6

14

1110

E

7

0111

7

15

1111

F

 Двоично-десятичная система счисления

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

Пример 7. Десятичное число 9703 в двоично-десятичной системе выглядит так:

1001 0111 0000 0011.

Преимущества двоичной системы счисления над десятичной с точки зрения ЭВМ в следующем:

  •  требуются элементы с двумя устойчивыми состояниями;
  •  существенно упрощаются арифметические операции;
  •  оборудования требуется в 1,5 раза меньше;
  •  позволяет применить аппарат математической логики для анализа и синтеза схем.

Недостатки  двоичной системы счисления:

  •  большая длина записи чисел;
  •  при вводе и выводе информации требуется перевод в десятичную систему счисления.

Двоичная арифметика

Рассмотрим, как выполняются основные действия в двоичной арифметике.

Сложение  Вычитание  Умножение  Деление 

0 + 0 = 0   0 – 0 = 0              0 х 0 = 0  0 : 1 = 0

0 + 1 = 1  1 – 0 = 1  0 х 1 = 0   1 : 1 = 1

1 + 0 = 1  1 – 1 = 0  1 х 0 = 0

1 + 1 = 10  10 – 1 = 1  1 х 1 = 1

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

При сложении единица переноса складывается с цифрами соседнего старшего разряда. При вычитании единица заема старшего разряда дает две единицы в младшем соседнем разряде.

Пример 8

Умножение двоичных чисел аналогично умножению десятичных, но т.к. умножаем только на 0 и 1, то умножение сводится к операции сдвига и сложения.

 

Пример 9


Перевод чисел из одной системы счисления в другую 

Сначала рассмотрим перевод из двоичной системы счисления в шестнадцатеричную и наоборот. Это наиболее просто в связи с тем, что 16 = 24.

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

Пример 10

305,416 =0011 0000 0101,01002 =1100000101,012

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

Пример 11

1010111,11011012 =0101 0111,1101 10102 =57,DA16

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

Правило 3. Задано число С, представленное в системе счисления с основанием S: C = Cn Cn-1C1 C0 C-1 C-m . Нужно перевести его в h-систему, выполняя действия в новой системе счисления.

Для этого нужно представить его в виде суммы степеней S :

C = Cn Sn +Cn-1 Sn-1 +…+C1 S1 +C0 S0 +C-1 S-1 +…+C-m S-m,

где основание S, коэффициенты С и номера разрядов i выражены в новой h-системе. Все действия надо выполнять в h-системе.

Пример 12  

1. Перевести 2Е5,А16  в десятичную систему счисления:

            2Е5,А16 =2 162 +14161 +5160 +1016-1 =741,62510.

2. Перевести 5210 в двоичную систему счисления:

             5210=10110101 +1010100 =110010+10=1101002.

3. Перевести 1101,101 в десятичную систему счисления:

             1101,1012 = 1 23 +1 22 +0 21 +1 20 +1 2-1 +0 2-2+1 2-3 =13,62510.

Этот способ удобен при S < h и особенно для ручного перевода в десятичную систему счисления.

Рассмотрим перевод целого числа С  из S-системы в h-систему в арифметике S-системы счисления.

Правило 4. Для перевода целого числа из S-системы в h-систему счисления в арифметике S-системы нужно последовательно делить это число и получающиеся частные на h до тех пор, пока частное не станет меньше h. Старшей цифрой в новой записи числа будет последнее частное, а следующие за ней цифры дают остатки, вписанные в последовательность, обратную их получению. Все вычисления производятся в старой S-системе. (При S<h прежде, чем записать число, надо получившиеся остатки переписать в цифры h-системы).

Приме 13

1. Перевести число 70 в двоичную систему счисления


Прямой, обратный и дополнительный коды чисел 

В ЭВМ с целью упрощения арифметических операций применяют специальные коды для представления чисел. При помощи этих кодов:

  •  автоматически определяется знак результата;
  •  операция вычитания сводится к арифметическому сложению кодов чисел;
  •  упрощается операционная часть ЭВМ.

В ЭВМ используется прямой, обратный и дополнительный коды чисел. Знак “+” кодируется нулем (0), “-” - единицей (1), которые записываются в дополнительном старшем разряде - знаковом разряде.

Возьмем  целое число С = + Cn Cn-1 Cn-2 ...C1 C0 .

1. Прямой код для целых чисел определяется:                                                           

.

Для отрицательных двоичных чисел имеем:

C  = 2 +-Cn Cn-1 ...C0 = 1.Cn Cn-1 ...C0,

где точкой отделен знаковый разряд.

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

C = +10110,     Cпр  = 0.10110;   C = -10110,       Cпр = 1.10110.

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

  1.  Обратный код определяется:                                                         

.

Для отрицательных двоичных чисел имеем:

    Cобр = 2n+2 - 1 --Cn Cn-1C0 = 11…1 – 0.Cn Cn-1C0= 1.n  n-10,

где I = 1 при Ci = 0 и I = 0  при Ci = 1 .                                                           

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

C = +10110,  Cобр = 0.10110;   С = -10110,  Собр = 1.01001.

  1.  Дополнительный код чисел определяется:                                                             

.

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

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

                    Cдоп = Собр +1,      при   С < 0 .

C = +10110,  Cдоп = 0.10110;   С = -10110,   Сдоп = Собр+1 = 1.01001+1 = 1.01010.

Как можно увидеть, при вычислениях в ЭВМ в прямом и обратном коде может получиться как положительный, так и отрицательный нуль (+0, -0).

(+0)пр=0,00…0,       (-0)пр=1,00..0;

(+0)обр=0,00…0,    (-0)обр=1,11…1.

И только в дополнительном коде нуль представляется однозначно:

(+0)доп = 0,00…0,   (-0)доп = 1,11…1+2-m = 0.

Нетрудно доказать, что (по модулю):

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

Сложение чисел в прямом и дополнительном коде

Можно строго математически доказать следующие правила.

Правило 1. При сложении дополнительных кодов чисел знаковые разряды складываются аналогично остальным, перенос из знакового разряда теряется, результат получается в дополнительном коде.

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

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

Пример 3.14


Варианты представления информации в ПК

Как уже упоминалось, вся информация (данные) представлена в виде двоичных кодов. Для удобства работы введены следующие термины, обозначающие совокупности двоичных разрядов (табл. 3). Эти единицы обычно используются в качестве единиц измерения объемов информации, хранимой или обрабатываемой в ЭВМ.

Восемь последовательных битов составляют байт. Как правило, код символа хранится в одном байте. Такие кодировки называются однобайтными. В одном байте можно закодировать значение одного символа из 256 возможных (28 = 256). Примером такой кодировки может служить код ASCII (American Code for Information Interchange –американский код обмена информацией). В настоящее время все большее применение приобретает двухбайтная кодировка Unicode, в ней коды символов могут иметь значение от 0 до 65535. В этой кодировке имеются коды для практически всех применяемых символов (букв алфавитов разных языков, математических, декоративных символов и т.д.).

                               Двоичные совокупности                                                    Таблица 3

Количество двоичных разрядов в группе

   1

 8

16   

8*1024

8*10242

8*10243

8*10244

Наименование единицы измерения

Бит

Байт

Пара-граф

Килобайт

(Кбайт)

Мегабайт

(Мбайт)

Гигабайт

(Гбайт)

Терабайт

(Тбайт)

 

Последовательность нескольких битов или байтов часто называют полем данных. Биты в числе (в слове, в поле и т.п.) нумеруются справа налево, начиная с 0-го разряда.

В ПК могут обрабатываться поля постоянной и переменной длины.

Поля постоянной длины:

  •  слово – 2 байта;
  •  полуслово – 1 байт;
  •  двойное слово – 4 байта;
  •  расширенное слово – 8 байт.

Числа с фиксированной запятой чаще всего имеют формат слова и полуслова, числа с плавающей точкой – формат двойного и расширенного слова.

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

Пример 3.15

Структурно запись числа –19310 = -110000012 в разрядной сетке ПК выглядит следующим образом.

Число с фиксированной запятой формата слово со знаком:

Знак

Абсолютная величина числа

N разряда

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

Число

1

0

0

0

0

0

0

0

1

1

0

0

0

0

0

1

Вопросы для контроля знаний

  1.  Что такое система счисления?
  2.  Какие системы счисления являются позиционными и непозиционными?
  3.  Как представляются числа в форме с фиксированной и плавающей запятой?
  4.  Какое максимальное число можно представить в 8 разрядах?
  5.  Какие цифры присутствуют в записи числа в двоичной системе счисления?
  6.  Какие цифры образуют алфавит шестнадцатеричной системы счисления?
  7.  В чем преимущество двоичной системы счисления с точки зрения ЭВМ?
  8.  Сформулируйте правила перевода чисел из одной системы счисления в другую.
  9.  Для чего нужны прямой, обратный и дополнительный коды чисел?
  10.  Как получить дополнительный код числа?
  11.  Что такое бит, байт, килобайт, мегабайт?
  12.  Сколько байт в 2 Гбайтах?
  13.  Сколько бит необходимо для кодирования одной буквы алфавита, состоящего из 256 символов?
  14.  Сколько различных чисел можно записать в 2 байтах?

  Контрольное мероприятие

!  Домашняя работа № 1

EMBED Equation.3  

EMBED Equation.3  

1)  110111,01         55,25            2)  11011,10           27,5

   + 10011,10      +19,5                    -1101,01         -13,25

           1001010,11         74,75                   1110,01          14,25

               1011,1

            х  101,01

                10111

            10111        - сдвинутое на 2 разряда влево множимое

        10111              - сдвинутое на 4 разряда влево множимое

        111100,011

70  2

  0   35 2

1     17 2

        1    8 2

             0    4 2

                   0   2  2           7010 =10001102           

                                 0    1     

2. Перевести 10000000 в десятичную систему счисления

  10000000 1010

 -  1010         1100  1010        

       1100    - 1010       1       

    -  1010          10=210

             1000=810                              100000002 =12810

             1.   X = 0,0101,          Y = -0,0011

    Xдоп = 0,0101,      Yдоп = 1,1101

Xдоп  + Yдоп = 0,0101

                    +1,1101

                                      10,0010  (единица переноса теряется)

             2.   A = +0,10111,          B = -0,01010

     Aобр = 0,10111,       Bобр = 1,10101

Aобр  + Bобр =  0,10111

                    +1,10101

                                      10,01100

                                                   1           (циклический перенос)

                                        0,01101

Непозиционные

Позиционные

Системы счисления


 

А также другие работы, которые могут Вас заинтересовать

52058. До побачення, Букварику! 47 KB
  Я літери вчу. Ой ніколи гратись бо літери вчу. Шановні літери ласкаво просимо до нас на свято. Заходять літери 1а літера.
52059. Розвиток координації рухів засобами художньої гімнастики 66.5 KB
  Розвивати координацію рухів у дівчат старшої ланки засобами художньої гімнастики. Формувати компетенцію саморозвитку та самоосвіти під час виконання вправ з м`чем, обручем, скакалкою.
52060. МЕДИЦИНСКАЯ ЗАЩИТА НАСЕЛЕНИЯ И СПАСАТЕЛЕЙ В ЧРЕЗВЫЧАЙНЫХ СИТУАЦИЯХ 108 KB
  Медицинская защита - комплекс мероприятий, проводимых (организуемых) службой медицины катастроф и медицинской службой гражданской обороны (МСГО) для предупреждения или максимального ослабления воздействия на население и спасателей поражающих факторов.
52061. Калинка — згадка про добре серце 96 KB
  Організація класу Слайд 1 Вчитель: Любі діти у наш клас Завітали гості щирі . Метод Мікрофон Слайд 2 А цікаво вам дізнатись Що сьогодні може статись Ну то всядьтеся зручніше – Попрацюємо скоріше Діти а до якого уроку ми приготувалися до уроку читання Що ми робимо на уроках читання читаємо; вчимося читати і переказувати; вивчаємо прислів’я приказки скоромовки і т. Слайд 3 Дихальні вправи. Слайд4...
52062. Володимир Винниченко. «Федько — халамидник». Щедрий на добро внутрішній світ героя. Федько як особистість. Образи Федька і Толі 141 KB
  Образи Федька і Толі. Образи Федька і Толі. На уроці ми з вами визначимо риси характеру Федька які вирізняють його з кола друзів – однолітків прокоментуємо їх. Порівняємо Федька і Толю зробимо відповідні висновки.
52063. Подорож. Переваги і недоліки різних видів подорожей 76.5 KB
  Travelling by plane is the fastest. You can get to many cities only in a few hours. You can stop wherever you like. During the trip you can sit comfortably in the armchair and read, eat or sleep. During the trip you need no tickets. People can
52064. Підсумковий урок – подорож «Синоніми, антоніми, омоніми» 37.5 KB
  учні дають визначення синонімам наводять приклади; Гра Синонімічний ланцюжок І варіант – щирий ІІ варіант – казати ІІІ варіант – кричати виконання вправ за варіантами різних рівнів складності І варіант – скласти зв’язний текст з синонімічного ланцюжка ІІ варіант – відредагувати речення замінивши однокореневі слова синонімами. ІІІ варіант – Підберіть потрібне слово. Коли групи приїхали на зупинку диктор оголошував назву станції але мікрофон був зламаний і ми почули останні слова деньніч З’ясуємо яке це місто...
52065. В поисках сокровищ Луганщины 597.5 KB
  Углублять знания учащихся о родном крае; формировать представление о национальной культуре украинского народа; развивать поисковые и творческие способности учащихся, умение работать в команде, мышление, память, представление;
52066. Наука. Наукові дослідження 2.35 MB
  Наука — сфера людської діяльності, функцією якої є вироблення і систематизація об'єктивних знань про дійсність; одна з форм суспільної свідомості.