Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции - Дискретная математика.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
1.34 Mб
Скачать

Лекция 7 Системы счисления

Система счисления – это система записи чисел.

Пусть b – натуральное число, большее единицы. Тогда любое целое неотрицательное число единственным образом представимо в виде:

a = an–1bn–1 + an–2 bn–2 + ... + a1b + a0,

где (хотя это теорема, но ее доказательство рассматривать не будем). Подобная запись называется полиномиальной (степенной) формой представления числа. Само число a записывают так: a = an–1an–2...a0, где ai называется i-м разрядом числа. Величина b называется основанием системы счисления, n – разрядность числа, ai – цифры (алфавит системы счисления).

Подобное представление числа называют позиционным, так как «вес» каждой цифры определяется ее позицией в числе: последняя (младшая) цифра умножается на весовой коэффициент b0 = 1, а первая (старшая) цифра – на bn–1.

Обычно используют следующие системы счисления: = 2 – двоичная (binary), = 8 – восьмеричная (octal), = 10 – десятичная (decimal), = 16 – шестнадцатеричная (hexadecimal). Перевод чисел из одной системы счисления в другую может быть выполнен путем деления на основание системы счисления или с помощью разрядной сетки.

Пример. Перевести число 2610 в двоичную систему счисления. Выполняем последовательное деление 26 на 2, далее располагаем в обратном порядке последнее частное и остатки.

26

2

26

13

2

0

12

6

2

1

6

3

2

0

2

1

1

Рис. 1.1.

Получена двоичная запись исходного числа: 2610 = 110102.

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

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

Для = 16 представление чисел оказывается более удобным по сравнению с двоичной системой, поскольку количество цифр в шестнадцатеричном числе в четыре раза меньше, чем в двоичном. Составим таблицу двоичных представлений для чисел от 0 до 2– 1 = 15. Арабских цифр оказывается недостаточно, поэтому цифрам, идущим после девятки, принято ставить в соответствие первые шесть букв латинского алфавита.

Числа от 0 до 15 в двоичной и 16-ричной системах счисления

b = 16

b = 2

b = 16

b = 2

b = 16

b = 2

b = 16

b = 2

0

0000

4

0100

8

1000

C (12)

1100

1

0001

5

0101

9

1001

D (13)

1101

2

0010

6

0110

A (10)

1010

E (14)

1110

3

0011

7

0111

B (11)

1011

F (15)

1111

Эту таблицу необходимо выучить наизусть.

Сформулируем правила перевода из двоичной системы в 16-ю и наоборот.

Переход 16 2. Заменить каждую цифру ее двоичным представлением. Например, 1A16 = 0001 1010 = 110102. (Незначащие нули можно опустить.)

Переход 2 16. Разбить число справа налево на тетрады (четверки цифр). Каждую тетраду заменить 16-ричной цифрой. Например:

111011011111102 = 11 1011 0111 1110 = 0011 1011 0111 1110 = 3B7E16

Наименьшей единицей информации принято считать бит (bit – сокращение от английского BInary digiT – двоичная цифра). Бит принимает два значения, которые кодируются нулем и единицей. Тем самым описываются два уровня сигнала, два состояния элемента и т.д. Если значение бита равно 1, то говорят, что он «установлен», если 0 – то «сброшен».

Работать с каждым битом по отдельности сложно, поэтому их объединяют в группы и рассматривают это объединение как единое целое. Наименьшей группой битов, к которым можно обращаться, является байт (byte), состоящий из 8 бит. Биты нумеруются так же, как и разряды в позиционной системе счисления: справа налево, начиная с нулевого

7

6

5

4

3

2

1

0

Части байта имеют свои названия: биты с 0-го по 3-й называют младшим полубайтом, а биты с 4-го по 7-й – старшим полубайтом. Полубайт также называют тетрадой. Один байт может рассматриваться как число без знака в диапазоне от 0 до 28–1=255 или число со знаком в диапазоне от -128 до +127 включительно.

Используют и более крупные единицы. Машинное слово (word) состоит из двух байт:

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

старший байт

младший байт

Одно машинное слово может представлять собой число без знака в диапазоне от 0 до 216–1=65535 или число со знаком в диапазоне от -32768 до +32767.

Двойное слово (doubleword) состоит из двух машинных слов или четырех байтов:

31

30

29

16

15

2

1

0

старшее слово

младшее слово

Одно двойное слово может представлять собой число без знака в диапазоне от 0 до 232–1 или число со знаком в диапазоне от (–231) до (+231–1).

Как было отмечено, принятая нумерация битов (слева направо, начиная с нуля) соответствует номерам разрядов в позиционной системе счисления. Если в ячейке памяти записано двоичное число, то номер бита k является показателем в весовом коэффициенте bk позиционного представления числа. Пусть, например, в байте установлены 5-й и 2-й бит, а остальные сброшены. Это означает, что в нем записано число 1*25 + 1*22 = 32 + 4 = 36.

Нулевой бит ячейки называют также младшим битом. Крайний слева бит носит название «старший бит». Нельзя его называть первым: первым является бит «второй справа».

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