SlideShare a Scribd company logo
Лекция 3. Системы счисления
Что такое система счисления?
Система счисления — это совокупность приемов и правил, по которым числа записывают-
ся и читаются.
Существуют позиционные и непозиционные системы счисления.
В непозиционных системах счисления вес цифры (т. е. тот вклад, который она вносит в
значение числа) не зависит от ее позиции в записи числа. Так, в римской системе счисления в
числе ХХХII (тридцать два) вес цифры Х в любой позиции равен просто десяти.
В позиционных системах счисления вес каждой цифры изменяется в зависимости от ее
положения (позиции) в последовательности цифр, изображающих число. Например, в числе
757,7 первая семерка означает 7 сотен, вторая — 7 единиц, а третья — 7 десятых долей едини-
цы.
Сама же запись числа 757,7 означает сокращенную запись выражения
700 + 50 + 7 + 0,7 = 7 .
102
+ 5.
101
+ 7.
100
+ 7.
10—1
= 757,7.
Любая позиционная система счисления характеризуется своим основанием.
Основание позиционной системы счисления — количество различных цифр, используемых
для изображения чисел в данной системе счисления.
За основание системы можно принять любое натуральное число — два, три, четыре и т.д.
Следовательно, возможно бесчисленное множество позиционных систем: двоичная, троич-
ная, четверичная и т.д. Запись чисел в каждой из систем счисления с основанием q означает
сокращенную запись выражения
an-1 qn-1
+ an-2 qn-2
+ ... + a1 q1 + a0 q0 + a-1 q-1
+ ... + a-m q-m
,
где ai — цифры системы счисления; n и m — число целых и дробных разрядов, соответствен-
но.
Например:
Как порождаются целые числа в позиционных системах счисле-
ния?
В каждой системе счисления цифры упорядочены в соответствии с их значениями: 1 боль-
ше 0, 2 больше 1 и т.д.
Продвижением цифры называют замену её следующей по величине.
Продвинуть цифру 1 значит заменить её на 2, продвинуть цифру 2 значит заменить её на 3
и т.д. Продвижение старшей цифры (например, цифры 9 в десятичной системе) означает за-
мену её на 0. В двоичной системе, использующей только две цифры — 0 и 1, продвижение 0 оз-
начает замену его на 1, а продвижение 1 — замену её на 0.
Целые числа в любой системе счисления порождаются с помощью Правила счета [44]:
Для образования целого числа, следующего за любым данным целым числом,
нужно продвинуть самую правую цифру числа; если какая-либо цифра после про-
движения стала нулем, то нужно продвинуть цифру, стоящую слева от неё.
Применяя это правило, запишем первые десять целых чисел
• в двоичной системе: 0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001;
• в троичной системе: 0, 1, 2, 10, 11, 12, 20, 21, 22, 100;
• в пятеричной системе: 0, 1, 2, 3, 4, 10, 11, 12, 13, 14;
• в восьмеричной системе: 0, 1, 2, 3, 4, 5, 6, 7, 10, 11.
Какие системы счисления используют специалисты для общения с
компьютером?
Кроме десятичной широко используются системы с основанием, являющимся целой степе-
нью числа 2, а именно:
• двоичная (используются цифры 0, 1);
• восьмеричная (используются цифры 0, 1, ..., 7);
• шестнадцатеричная (для первых целых чисел от нуля до девяти используются цифры 0,
1, ..., 9, а для следующих чисел — от десяти до пятнадцати — в качестве цифр использу-
ются символы A, B, C, D, E, F).
Полезно запомнить запись в этих системах счисления первых двух десятков целых чисел:
10-я 2-я 8-я 16-я
0 0 0 0
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-я 2-я 8-я 16-я
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 20 10
17 10001 21 11
18 10010 22 12
19 10011 23 13
Из всех систем счисления особенно проста и поэтому интересна для технической реали-
зации в компьютерах двоичная система счисления.
Почему люди пользуются десятичной системой, а компьютеры —
двоичной?
Люди предпочитают десятичную систему, вероятно, потому, что с древних времен считали
по пальцам, а пальцев у людей по десять на руках и ногах. Не всегда и не везде люди пользуют-
ся десятичной системой счисления. В Китае, например, долгое время пользовались пятеричной
системой счисления.
А компьютеры используют двоичную систему потому, что она имеет ряд преимуществ пе-
ред другими системами:
• для ее реализации нужны технические устройства с двумя устойчивыми состояния-
ми (есть ток — нет тока, намагничен — не намагничен и т.п.), а не, например, с десятью,
— как в десятичной;
• представление информации посредством только двух состояний надежно и помехо-
устойчиво;
• возможно применение аппарата булевой алгебры для выполнения логических преоб-
разований информации;
• двоичная арифметика намного проще десятичной.
Недостаток двоичной системы — быстрый рост числа разрядов, необходимых для записи чи-
сел.
Почему в компьютерах используются также восьмеричная и шест-
надцатеричная системы счисления?
Двоичная система, удобная для компьютеров, для человека неудобна из-за ее громоздкости
и непривычной записи.
Перевод чисел из десятичной системы в двоичную и наоборот выполняет машина. Однако,
чтобы профессионально использовать компьютер, следует научиться понимать слово машины.
Для этого и разработаны восьмеричная и шестнадцатеричная системы.
Числа в этих системах читаются почти так же легко, как десятичные, требуют соответст-
венно в три (восьмеричная) и в четыре (шестнадцатеричная) раза меньше разрядов, чем в дво-
ичной системе (ведь числа 8 и 16 — соответственно, третья и четвертая степени числа 2).
Перевод восьмеричных и шестнадцатеричных чисел в двоичную систему очень прост: дос-
таточно каждую цифру заменить эквивалентной ей двоичной триадой (тройкой цифр) или
тетрадой (четверкой цифр).
Например:
Чтобы перевести число из двоичной системы в восьмеричную или шестнадцатеричную, его
нужно разбить влево и вправо от запятой на триады (для восьмеричной) или тетрады
(для шестнадцатеричной) и каждую такую группу заменить соответствующей восьмерич-
ной (шестнадцатеричной) цифрой.
Например,
Как перевести целое число из десятичной системы в любую другую
позиционную систему счисления?
Для перевода целого десятичного числа N в систему счисления с основанием q необходи-
мо N разделить с остатком ("нацело") на q , записанное в той же десятичной системе. За-
тем неполное частное, полученное от такого деления, нужно снова разделить с остатком на
q , и т.д., пока последнее полученное неполное частное не станет равным нулю. Представле-
нием числа N в новой системе счисления будет последовательность остатков деления, изо-
браженных одной q-ичной цифрой и записанных в порядке, обратном порядку их получе-
ния.
Пример: Переведем число 75 из десятичной системы в двоичную, восьмеричную и шест-
надцатеричную:
Ответ: 7510 = 1 001 0112 = 1138 = 4B16.
4.7. Как пеpевести пpавильную десятичную дpобь в любую другую
позиционную систему счисления?
Для перевода правильной десятичной дpоби F в систему счисления с основанием q необ-
ходимо F умножить на q , записанное в той же десятичной системе, затем дробную часть
полученного произведения снова умножить на q, и т. д., до тех пор, пока дpобная часть оче-
редного пpоизведения не станет pавной нулю, либо не будет достигнута требуемая точность
изображения числа F в q-ичной системе. Представлением дробной части числа F в новой
системе счисления будет последовательность целых частей полученных произведений, за-
писанных в порядке их получения и изображенных одной q-ичной цифрой. Если требуемая
точность перевода числа F составляет k знаков после запятой, то предельная абсолютная
погрешность при этом равняется q -(k+1)
/ 2.
Пример. Переведем число 0,36 из десятичной системы в двоичную, восьмеричную и шест-
надцатеричную:
Для чисел, имеющих как целую, так и дробную части, перевод из десятичной системы счис-
ления в другую осуществляется отдельно для целой и дробной частей по правилам, указан-
ным выше.
Как пеpевести число из двоичной (восьмеpичной,
шестнадцатеpичной) системы в десятичную?
Перевод в десятичную систему числа x, записанного в q-ичной cистеме счисления (q = 2, 8
или 16) в виде xq = (anan-1 ... a0 , a-1 a-2 ... a-m)q сводится к вычислению значения много-
члена
x10 = an qn + an-1 qn-1
+ ... + a0 q0 + a-1 q -1
+ a-2 q-2
+ ... + a-m q-m
средствами десятичной арифметики.
Примеpы:
4.9. Сводная таблица переводов целых чисел из одной системы
счисления в другую
Рассмотрим только те системы счисления, которые применяются в компьютерах — деся-
тичную, двоичную, восьмеричную и шестнадцатеричную. Для определенности возьмем произ-
вольное десятичное число, например 46, и для него выполним все возможные последователь-
ные переводы из одной системы счисления в другую. Порядок переводов определим в соответ-
ствии с рисунком:
На этом рисунке использованы следующие обозначения:
• в кружках записаны основания систем счисления;
• стрелки указывают направление перевода;
• номер рядом со стрелкой означает порядковый номер соответствующего примера в свод-
ной таблице 4.1.
Например: означает перевод из двоичной системы в шестнадцатеричную, имеющий в
таблице порядковый номер 6.
Сводная таблица переводов целых чисел
Таблица 4.1.
Как производятся арифметические операции в позиционных систе-
мах счисления?
Рассмотрим основные арифметические операции: сложение, вычитание, умножение и де-
ление. Правила выполнения этих операций в десятичной системе хорошо известны — это сло-
жение, вычитание, умножение столбиком и деление углом. Эти правила применимы и ко всем
другим позиционным системам счисления. Только таблицами сложения и умножения надо
пользоваться особыми для каждой системы.
С л о ж е н и е
Таблицы сложения легко составить, используя Правило Счета.
Сложение в двоичной системе Сложение в восьмеричной системе
Сложение в шестнадцатиричной системе
При сложении цифры суммируются по разрядам, и если при этом возникает избыток, то он пе-
реносится влево.
Пример 1. Сложим числа 15 и 6 в различных системах счисления.
Шестнадцатеричная: F16+616 Ответ: 15+6 = 2110 = 101012 = 258 = 1516.
Проверка. Преобразуем полученные суммы
к десятичному виду:
101012 = 24
+ 22
+ 20
= 16+4+1=21,
258 = 2 .
81
+ 5 .
80
= 16 + 5 = 21,
1516 = 1.
161 + 5.
160 = 16+5 = 21.
Пример 2. Сложим числа 15, 7 и 3.
Шестнадцатеричная: F16+716+316 Ответ: 5+7+3 = 2510 = 110012 = 318 = 1916.
Проверка:
110012 = 24
+ 23
+ 20
= 16+8+1=25,
318 = 3 .
81
+ 1 .
80
= 24 + 1 = 25,
1916 = 1.
161
+ 9.
160
= 16+9 = 25.
Пример 3. Сложим числа 141,5 и 59,75.
Ответ: 141,5 + 59,75 = 201,2510 = 11001001,012 = 311,28 = C9,416
Проверка. Преобразуем полученные суммы к десятичному виду:
11001001,012 = 27
+ 26
+ 23
+ 20
+ 2-2
= 201,25
311,28 = 3 .
82
+ 181
+ 1 .
80
+ 2 .
8-1
= 201,25
C9,416 = 12 .
161
+ 9 .
160
+ 4 .
16-1
= 201,25
В ы ч и т а н и е
Пример 4. Вычтем единицу из чисел 102, 108 и 1016
Пример 5. Вычтем единицу из чисел 1002, 1008 и 10016.
Пример 6. Вычтем число 59,75 из числа 201,25.
Ответ: 201,2510 - 59,7510 = 141,510 = 10001101,12 = 215,48 = 8D,816.
Проверка. Преобразуем полученные разности к десятичному виду:
10001101,12 = 27
+ 23
+ 22
+ 20
+ 2-1
= 141,5;
215,48 = 2 .
82
+ 1 .
81
+ 5 .
80
+ 4 .
8-1
= 141,5;
8D,816 = 8.
161
+ D.
160
+ 8.
16-1
= 141,5.
У м н о ж е н и е
Выполняя умножение многозначных чисел в различных позиционных системах счисления,
можно использовать обычный алгоритм перемножения чисел в столбик, но при этом результа-
ты перемножения и сложения однозначных чисел необходимо заимствовать из соответствую-
щих рассматриваемой системе таблиц умножения и сложения.
Умножение в двоичной системе Умножение в восьмеричной системе
Ввиду чрезвычайной простоты таблицы умножения в двоичной системе, умножение сво-
дится лишь к сдвигам множимого и сложениям.
Пример 7. Перемножим числа 5 и 6.
Ответ: 5 .
6 = 3010 = 111102 = 368.
Проверка. Преобразуем полученные произведения к десятичному виду:
111102 = 24
+ 23
+ 22
+ 21
= 30;
368 = 381
+ 680
= 30.
Пример 8. Перемножим числа 115 и 51.
Ответ: 115 .
51 = 586510 = 10110111010012 = 133518.
Проверка. Преобразуем полученные произведения к десятичному виду:
10110111010012 = 212
+ 210
+ 29
+ 27
+ 26
+ 25
+ 23
+ 20
= 5865;
133518 = 1.
84
+ 3.
83
+ 3.
82
+ 5.
81
+ 1.
80
= 5865.
Д е л е н и е
Деление в любой позиционной системе счисления производится по тем же правилам, как и де-
ление углом в десятичной системе. В двоичной системе деление выполняется особенно просто,
ведь очередная цифра частного может быть только нулем или единицей.
Пример 9. Разделим число 30 на число 6.
Ответ: 30 : 6 = 510 = 1012 = 58.
Пример 10. Разделим число 5865 на число 115.
Восьмеричная: 133518 :1638
Ответ: 5865 : 115 = 5110 = 1100112 = 638.
Проверка. Преобразуем полученные частные к десятичному виду:
1100112 = 25
+ 24
+ 21
+ 20
= 51; 638 = 6.
81
+ 3.
80
= 51.
Пример 11. Разделим число 35 на число 14.
Восьмеричная: 438 : 168
Ответ: 35 : 14 = 2,510 = 10,12 = 2,48.
Проверка. Преобразуем полученные частные к десятичному виду:
10,12 = 21
+ 2 -1
= 2,5;
2,48 = 2.
80
+ 4.
8-1
= 2,5.
Как представляются в компьютере целые числа?
Целые числа могут представляться в компьютере со знаком или без знака.
Целые числа без знака
Обычно занимают в памяти компьютера один или два байта. В однобайтовом фор-
мате принимают значения от 000000002 до 111111112. В двубайтовом формате - от
00000000 000000002 до 11111111 111111112.
Диапазоны значений целых чисел без знака
Формат чис-
ла в байтах
Диапазон
Запись с порядком Обычная запись
1 0 ... 28
-1 0 ... 255
2 0 ... 216
-1 0 ... 65535
Примеры:
а) число 7210 = 10010002 в однобайтовом формате:
б) это же число в двубайтовом формате:
в) число 65535 в двубайтовом формате:
Целые числа со знаком
Обычно занимают в памяти компьютера один, два или четыре байта, при этом самый ле-
вый (старший) разряд содержит информацию о знаке числа.
Диапазоны значений целых чисел со знаком
Формат
числа в
байтах
Диапазон
Запись с порядком Обычная запись
1 -27
... 27
-1 -128 ... 127
2 -215
... 215
-1 -32768 ... 32767
4 -231
... 231
-1 -2147483648 ... 2147483647
Рассмотрим особенности записи целых чисел со знаком на примере однобайтового фор-
мата, при котором для знака отводится один разряд, а для цифр абсолютной величины - семь
разрядов.
В компьютерной технике применяются три формы записи (кодирования) целых чисел со знаком:
прямой код, обратный код, дополнительный код.
Последние две формы применяются особенно широко, так как позволяют упростить конст-
рукцию арифметико-логического устройства компьютера путем замены разнообразных арифме-
тических операций операцией cложения.
Положительные числа в прямом, обратном и дополнительном кодах изображаются оди-
наково - двоичными кодами с цифрой 0 в знаковом разряде. Например:
Отрицательные числа в прямом, обратном и дополнительном кодах имеют разное изо-
бражение.
1. Прямой код. В знаковый разряд помещается цифра 1, а в разряды цифровой части числа
— двоичный код его абсолютной величины. Например:
2. Обратный код. Получается инвертированием всех цифр двоичного кода абсолютной ве-
личины числа, включая разряд знака: нули заменяются единицами, а единицы — нулями. На-
пример:
3. Дополнительный код. Получается образованием обратного кода с последующим при-
бавлением единицы к его младшему разряду. Например:
Обычно отрицательные десятичные числа при вводе в машину автоматически преоб-
разуются в обратный или дополнительный двоичный код и в таком виде хранятся, переме-
щаются и участвуют в операциях. При выводе таких чисел из машины происходит обратное
преобразование в отрицательные десятичные числа.
Как компьютер выполняет арифметические действия над целыми
числами?
Сложение и вычитание
В большинстве компьютеров операция вычитания не используется. Вместо нее про-
изводится сложение обратных или дополнительных кодов уменьшаемого и вычитаемого.
Это позволяет существенно упростить конструкцию АЛУ.
Сложение обратных кодов. Здесь при сложении чисел А и В имеют место четыре ос-
новных и два особых случая:
1. А и В положительные. При суммировании складываются все разряды, включая разряд
знака. Так как знаковые разряды положительных слагаемых равны нулю, разряд знака суммы
тоже равен нулю. Например:
Получен правильный результат.
2. А положительное, B отрицательное и по абсолютной величине больше, чем А. На-
пример:
Получен правильный результат в обратном коде. При переводе в прямой код биты цифровой
части результата инвертируются: 1 0000111 = -710.
3. А положительное, B отрицательное и по абсолютной величине меньше, чем А. На-
пример:
Компьютер исправляет полученный первоначально неправильный результат (6 вместо 7) пере-
носом единицы из знакового разряда в младший разряд суммы.
4. А и В отрицательные.
Например:
Полученный первоначально неправильный результат (обратный код числа -1110 вместо об-
ратного кода числа -1010) компьютер исправляет переносом единицы из знакового разряда в
младший разряд суммы. При переводе результата в прямой код биты цифровой части числа ин-
вертируются: 1 0001010 = -1010.
При сложении может возникнуть ситуация, когда старшие разряды результата операции не
помещаются в отведенной для него области памяти. Такая ситуация называется переполнени-
ем разрядной сетки формата числа. Для обнаружения переполнения и оповещения о возник-
шей ошибке в компьютере используются специальные средства. Ниже приведены два возмож-
ных случая переполнения.
5. А и В положительные, сумма А+В больше, либо равна 2n-1
, где n — количество разря-
дов формата чисел (для однобайтового формата n=8, 2n-1
= 27 = 128). Например:
Семи разрядов цифровой части числового формата недостаточно для размещения восьми-
разрядной суммы (16210 = 101000102), поэтому старший разряд суммы оказывается в знако-
вом разряде. Это вызывает несовпадение знака суммы и знаков слагаемых, что является
свидетельством переполнения разрядной сетки.
6. А и В отрицательные, сумма абсолютных величин А и В больше, либо равна 2n-1
.
Например:
Здесь знак суммы тоже не совпадает со знаками слагаемых, что свидетельствует о пере-
полнении разрядной сетки.
Сложение дополнительных кодов. Здесь также имеют место рассмотренные выше
шесть случаев:
1. А и В положительные. Здесь нет отличий от случая 1, рассмотренного для обратного
кода.
2. А положительное, B отрицательное и по абсолютной величине больше, чем А. На-
пример:
Получен правильный результат в дополнительном коде. При переводе в прямой код биты циф-
ровой части результата инвертируются и к младшему разряду прибавляется единица: 1 0000110
+ 1 = 1 0000111 = -710.
3. А положительное, B отрицательное и по абсолютной величине меньше, чем А. На-
пример:
Получен правильный результат. Единицу переноса из знакового разряда компьютер отбрасыва-
ет.
4. А и В отрицательные.
Например:
Получен правильный результат в дополнительном коде. Единицу переноса из знакового разря-
да компьютер отбрасывает.
Случаи переполнения для дополнительных кодов рассматриваются по аналогии со слу-
чаями 5 и 6 для обратных кодов.
Сравнение рассмотренных форм кодирования целых чисел со знаком показывает:
• на преобразование отрицательного числа в обратный код компьютер затрачивает
меньше времени, чем на преобразование в дополнительный код, так как последнее
состоит из двух шагов — образования обратного кода и прибавления единицы к его
младшему разряду;
• время выполнения сложения для дополнительных кодов чисел меньше, чем для их
обратных кодов, потому что в таком сложении нет переноса единицы из знакового раз-
ряда в младший разряд результата.
Умножение и деление
Во многих компьютерах умножение производится как последовательность сложений и
сдвигов. Для этого в АЛУ имеется регистр, называемый накапливающим сумматором, кото-
рый до начала выполнения операции содержит число ноль. В процессе выполнения операции в
нем поочередно размещаются множимое и результаты промежуточных сложений, а по за-
вершении операции — окончательный результат.
Другой регистр АЛУ, участвующий в выполнении этой операции, вначале содержит мно-
житель. Затем по мере выполнения сложений содержащееся в нем число уменьшается, пока
не достигнет нулевого значения.
Для иллюстрации умножим 1100112 на 1011012.
Деление для компьютера является трудной операцией. Обычно оно реализуется путем
многократного прибавления к делимому дополнительного кода делителя.
Упражнения
4.1. Используя Правило Счета, запишите первые 20 целых чисел в десятичной, двоичной, тро-
ичной, пятеричной и восьмеричной системах счисления.
4.2. Какие целые числа следуют за числами:
а) 12; е) 18; п) F16;
б) 1012; ж) 78; м) 1F16;
в) 1112; з) 378; н) FF16;
г) 11112; и) 1778; о) 9AF916;
д) 1010112; к) 77778; п) CDEF16 ?
4.3. Какие целые числа предшествуют числам:
а) 102; е) 108; л) 1016;
б) 10102; ж) 208; м)2016;
в) 10002; з) 1008; н) 10016;
г) 100002; и) 1108; о) A1016;
д) 101002; к) 10008; п) 100016 ?
4.4. Какой цифрой заканчивается четное двоичное число? Какой цифрой заканчивается нечет-
ное двоичное число? Какими цифрами может заканчиваться четное троичное число?
4.5. Какое наибольшее десятичное число можно записать тремя цифрами:
o а) в двоичной системе;
o б) в восьмеричной системе;
o в) в шестнадцатеричной системе?
4.6. В какой системе счисления 21 + 24 = 100?
Решение. Пусть x — искомое основание системы счисления. Тогда 100x = 1 · x2
+ 0 · x1
+ 0 ·
x0
, 21x = 2 · x1
+ 1 · x0
, 24x = 2 · x1
+ 4 · x0
. Таким образом, x2
= 2x + 2x + 5 или x2
- 4x - 5 = 0.
Положительным корнем этого квадратного уравнения является x = 5.
Ответ. Числа записаны в пятеричной системе счисления.
4.7. В какой системе счисления справедливо следующее:
o а) 20 + 25 = 100;
o б) 22 + 44 = 110?
4.8. Десятичное число 59 эквивалентно числу 214 в некоторой другой системе счисления.
Найдите основание этой системы.
4.9. Переведите числа в десятичную систему, а затем проверьте результаты, выполнив об-
ратные переводы:
а) 10110112; е) 5178; л) 1F16;
б) 101101112; ж) 10108; м) ABC16;
в) 0111000012; з) 12348; н) 101016;
г) 0,10001102; и) 0,348; о) 0,А416;
д) 110100,112; к) 123,418; п) 1DE,C816.
4.10. Переведите числа из десятичной системы в двоичную, восьмеричную и шестнадцате-
ричную, а затем проверьте результаты, выполнив обратные переводы:
а) 12510; б) 22910; в) 8810; г) 37,2510; д) 206,12510.
4.11. Переведите числа из двоичной системы в восьмеричную и шестнадцатеричную, а за-
тем проверьте результаты, выполнив обратные переводы:
а) 1001111110111,01112; г) 1011110011100,112;
б) 1110101011,10111012; д) 10111,11111011112;
в) 10111001,1011001112; е) 1100010101,110012.
4.12. Переведите в двоичную и восьмеричную системы шестнадцатеричные числа:
а) 2СE16; б) 9F4016; в) ABCDE16; г) 1010,10116; д) 1ABC,9D16.
4.13. Выпишите целые числа:
o а) от 1011012 до 1100002 в двоичной системе;
o б) от 2023 до 10003 в троичной системе;
o в) от 148 до 208 в восьмеричной системе;
o г) от 2816 до 3016 в шестнадцатеричной системе.
4.14. Для десятичных чисел 47 и 79 выполните цепочку переводов из одной системы счис-
ления в другую:
4.15. Составьте таблицы сложения однозначных чисел в троичной и пятеричной системах
счисления.
4.16. Составьте таблицы умножения однозначных чисел в троичной и пятеричной системах
счисления.
4.17. Сложите числа, а затем проверьте результаты, выполнив соответствующие десятичные
сложения:
а) 10111012 и 11101112; д) 378 и 758; и) A16 и F16;
б) 1011,1012 и 101,0112; е) 1658 и 378; к) 1916 и C16;
в) 10112, 112 и 111,12; ж) 7,58 и 14,68; л) A,B16 и E,F16;
г) 10112 , 11,12 и 1112; з) 68, 178 и 78; м) E16, 916 и F16.
4.18. В каких системах счисления выполнены следующие сложения? Найдите основания
каждой системы:
4.19. Найдите те подстановки десятичных цифр вместо букв, которые делают правильными
выписанные результаты (разные цифры замещаются разными буквами):
4.20. Вычтите:
а) 1112 из 101002; д) 158 из 208; и) 1А16 из 3116;
б) 10,112 из 100,12; е) 478 из 1028; к) F9E16 из 2А3016;
в) 111,12 из 100102; ж) 56,78 из 1018; л) D,116 из B,9216;
г) 100012 из 1110,112; з) 16,548 из 30,018; м) ABC16 из 567816.
4.21. Перемножьте числа, а затем проверьте результаты, выполнив соответствующие деся-
тичные умножения:
а) 1011012 и 1012; д) 378 и 48;
б) 1111012 и 11,012; е) 168 и 78;
в) 1011,112 и 101,12; ж) 7,58 и 1,68;
г) 1012 и 1111,0012; з) 6,258 и 7,128.
4.22. Разделите 100101102 на 10102 и проверьте результат, умножая делитель на частное.
4.23. Разделите 100110101002 на 11002 и затем выполните соответствующее десятичное и вось-
меричное деление. 4.24. Вычислите значения выражений:
o а) 2568 + 10110,12
.
(608 + 1210) - 1F16;
o б) 1AD16 - 1001011002 : 10102 + 2178;
o в) 101010 + (10616 - 110111012) 128;
o г) 10112
.
11002 : 148 + (1000002 - 408).
4.25. Расположите следующие числа в порядке возрастания:
o а) 748, 1100102, 7010, 3816;
o б) 6E16, 1428, 11010012, 10010;
o в) 7778, 1011111112, 2FF16, 50010;
o г) 10010, 11000002, 6016, 1418.
4.26. Запишите уменьшающийся ряд чисел +3, +2, ..., -3 в однобайтовом формате:
o а) в прямом коде;
o б) в обратном коде;
o в) в дополнительном коде.
4.27. Запишите числа в прямом коде (формат 1 байт):
а) 31; б) -63; в) 65; г) -128.
4.28. Запишите числа в обратном и дополнительном кодах (формат 1 байт):
а) -9; б) -15; в) -127; г) -128.
4.29. Найдите десятичные представления чисел, записанных в дополнительном коде:
а) 1 1111000; б) 1 0011011; в) 1 1101001; г) 1 0000000.
4.30. Найдите десятичные представления чисел, записанных в обратном коде:
а) 1 1101000; б) 1 0011111; в) 1 0101011; г) 1 0000000.
4.31. Выполните вычитания чисел путем сложения их обратных (дополнительных) кодов в фор-
мате 1 байт. Укажите, в каких случаях имеет место переполнение разрядной сетки:
а) 9 - 2; г) -20 - 10; ж) -120 - 15;
б) 2 - 9; д) 50 - 25; з) -126 - 1;
в) -5 - 7; е) 127 - 1; и) -127 - 1.
Ответы — Раздел 4. Арифметические основы компьютеров
4.1. в) троичная: 0, 1, 2, 10, 11, 12, 20, 21, 22, 100, 101, 102, 110, 111, 112, 120, 121, 122, 200,
201; г) пятеричная: 0, 1, 2, 3, 4, 10, 11, 12, 13, 14, 20, 21, 22, 23, 24, 30, 31, 32, 33, 34.
4.2. а) 102; б) 1102; в) 10002; г) 100002; д) 1011002; е) 28; ж) 108; з) 408; и) 2008; к)
100008; л) 1016; м) 2016; н) 10016; о) 9AFA16; п) CDF016.
4.3. а) 12; б) 10012; в) 1112; г) 11112; д) 100112; е) 78; ж) 178; з) 778; и) 1078; к) 7778;
л) F16; м) 1F16; н) FF16; о) A0F16; п) FFF16.
4.4. Четное двоичное число оканчивается цифрой 0, нечетное двоичное — цифрой 1, чет-
ное троичное — цифрами 0, 1 или 2.
4.5. а) 7; б) 511; в) 4091.
4.7. а) ни в какой; б) в шестеричной.
4.8. Основание 5.
4.9. а) 91; б) 183; в) 225; г) 35
/64; д) 52,75; е) 335; ж) 520; з) 668; и) 7
/16; к) 8333
/64; л) 31; м)
2748; н) 4112; о) 41
/64; п) 47825
/32.
4.10. а) 11111012; 1758; 7D16; б) 111001012; 3458; E516; в) 10110002; 1308; 5816; г) 100101,012;
45,28; 25,416; д) 11001110,0012; 316,18; CE,216.
4.11. а) 11767,348; 13F7,716; б) 1653,5648; 3AB,BA16; в) 271,5478; B9,B3816; г) 13634,68;
179C,C16; д) 27,76748; 17,FBC16; е) 1425,628; 315,C816.
4.12. а) 10110011102; 13168; б) 10011111010000002; 1175008; в) 101010111100110111102;
25363368; г) 1000000010000,0001000000012; 10020,04018; д) 1101010111100,100111012;
15274,4728.
4.13. а) 1011012, 1011102, 1011112, 1100002; б) 2023, 2103, 2113, 2123, 2203, 2213, 2223, 10003;
в) 148, 158, 168, 178, 208; г) 2816, 2916, 2A16, 2B16, 2C16, 2D16, 2E16, 2F16, 3016;
4.14. а) 4710 - 1011112 - 578 - 4710 - 578 - 1011112 - 2F16 - 4710 - 2F16 - 1011112 - 4710; б) 7910 -
10011112 - 1178 - 7910 - 1178 - 10011112 - 4F16 - 7910 - 4F16 - 10011112 - 7910.
4.15.
+ 0 1 2 3 4
0 0 1 2 3 4
+ 0 1 2 1 1 2 3 4 10
0 0 1 2 2 2 3 4 10 11
1 1 2 10 3 3 4 10 11 12
2 2 10 11 4 4 10 11 12 13
4.16.
x 0 1 2 3 4
0 0 0 0 0 0
x 0 1 2 1 0 1 2 3 4
0 0 0 0 2 0 2 4 11 13
1 0 1 2 3 0 3 11 14 22
2 0 2 11 4 0 4 13 22 31
4.17. а) 110101002; б) 10001,02; в) 10101,12; г) 11001,12; д) 1348; е) 2248; ж) 24,38; з) 348; и)
1916; к) 2516; л) 19,A16; м) 2616.
4.18. а) в 16-й; б) в 10-й; в) в 3-й; г) в 8-й; д) в 16-й.
4.19. в) А=9, B=4, C=5, D=3, F=1, L=0, M=7, N=8; г) A=3, B=6, C=2, D=5, E=9, F=7, G=1,
H=0, I=4, J=8; д) A=9, B=3, C=4, D=2, E=1, F=8, G=0, H=7, I=6.
4.20. а) 11012; б) 1,112; в) 1010,12; г) -10,012; д) 38; е) 338; ж) 22,18; з) 11,258; и) 1716; к)
1A9216; л) -1,7E16; м) 4BBC16.
4.21. а) 111000012; б) 11000110,012; в) 1000000,1012; г) 1001011,1012; д) 1748; е) 1428; ж)
15.268; з) 55.22228.
4.22. 11112.
4.23. 11001112; 10310; 1478.
4.24. а) 149310; б) 54210; в) 142010; г) 1110.
4.25. а) 1100102, 3816, 748, 7010; б) 1428, 10010, 11010012, 6E16; в) 1011111112, 50010, 7778, 2FF16;
г) 11000002, 6016, 1418, 10010.
4.26. а) 00000011, 00000010, 00000001, 00000000, 10000001, 10000010, 10000011; б)
00000011, 00000010, 00000001, 00000000, 11111110, 11111101, 11111100; в) 00000011,
00000010, 00000001, 00000000, 11111111, 11111110, 11111101.
4.27. а) 00001111; б) 10111111; в) 01000001; г) невозможно.
4.28. Обратный: а) 11110110, б) 11110000, в) 10000000, г) невозможнo. Дополнительный:
а) 11110111; б) 11110001; в) 10000001; г) 10000000.
4.29. а) -8; б) -101; в) -23; г) -128.
4.30. а) -23; б) -96; в) -84; г) -127.
4.31. Обратный: а) 00000111; б) 11111000; в) 11110011; г) 11100001; д) 00011001; е)
01111110; ж) переполнение; з) 10000000; и) невозможно. Дополнительный: а) 00000111; б)
11111001; в) 11110100; г) 11100010; д) 00011001; е) 01111110; ж) переполнение; з) 10000001; и)
10000000.

More Related Content

DOC
8
PPT
лекция 4 системы счисления информатика
PPT
системы счиление
POTX
Системы счисления
PDF
система счисления
PPTX
обучающий тест по системам счисления
PPTX
Sistemy schisleniya munchesku
PPT
системы счисления
8
лекция 4 системы счисления информатика
системы счиление
Системы счисления
система счисления
обучающий тест по системам счисления
Sistemy schisleniya munchesku
системы счисления

What's hot (19)

PPT
Системы счисления
PPTX
обучающий тест по системам счисления
PPT
системы счисления
PPT
Презентация на тему: Системы счисления
PPT
Тема Системы счисления
PPT
системы счисления
PPT
системы счисления
PPS
системы счисления
PPT
9 1.1 - системы счисления
PDF
555.математика и информатика в 2 частях часть 2 практикум
PDF
Системы счисления
PPTX
Кодирование информации
PPT
SystemS
PPTX
инфа 19 (2)
PPT
Одномерные массивы целых чисел
PPT
системы счисления
PPT
лекция 8 арифметические операции информатика
PPT
лекция 8 арифметические операции информатика
Системы счисления
обучающий тест по системам счисления
системы счисления
Презентация на тему: Системы счисления
Тема Системы счисления
системы счисления
системы счисления
системы счисления
9 1.1 - системы счисления
555.математика и информатика в 2 частях часть 2 практикум
Системы счисления
Кодирование информации
SystemS
инфа 19 (2)
Одномерные массивы целых чисел
системы счисления
лекция 8 арифметические операции информатика
лекция 8 арифметические операции информатика
Ad

Viewers also liked (17)

PDF
Lumbalgia en trabajadores
PDF
ThesisFinal
PPT
MHS_Work_Smart_Crash_Course[2]
DOC
036
DOCX
Ekologia krajobrazu
PDF
Portfolio
DOCX
Reflexion modulo 3
PPT
0013
PPTX
Slide 1 (shared using http://VisualBee.com).
PDF
Silabo final
PDF
SANS 2013 Report: Digital Forensics and Incident Response Survey
PDF
Issues Paper on the FTA Tripartite
PPTX
Popular culture
PPTX
Chương 4 công thái học và quản lý an toàn
PPT
033
Lumbalgia en trabajadores
ThesisFinal
MHS_Work_Smart_Crash_Course[2]
036
Ekologia krajobrazu
Portfolio
Reflexion modulo 3
0013
Slide 1 (shared using http://VisualBee.com).
Silabo final
SANS 2013 Report: Digital Forensics and Incident Response Survey
Issues Paper on the FTA Tripartite
Popular culture
Chương 4 công thái học và quản lý an toàn
033
Ad

Similar to 05 (16)

DOCX
лекция 3.docx
DOCX
пр 3 перевод чисел.docx
PPTX
системы счисления Усков
POTX
Системы счисления
PPT
PPT
Системы счисления
PPT
Java. Cистемы счислния, битовые операции
PPT
8 класс 2 урок система счисление
PPT
перевод чисел
PDF
555.математика и информатика в 2 частях часть 2 практикум
DOC
02
PPT
10
PPT
лабораторная работа 1 1
PPTX
правила перевода чисел в позиционных системах счисления
PPT
лекция 8 арифметические операции информатика
DOC
12
лекция 3.docx
пр 3 перевод чисел.docx
системы счисления Усков
Системы счисления
Системы счисления
Java. Cистемы счислния, битовые операции
8 класс 2 урок система счисление
перевод чисел
555.математика и информатика в 2 частях часть 2 практикум
02
10
лабораторная работа 1 1
правила перевода чисел в позиционных системах счисления
лекция 8 арифметические операции информатика
12

More from JIuc (20)

DOCX
выступление на совет директоров
DOC
тест по теме системы счисления
DOC
тест по теме компьютерные коммуникации
DOC
тест по теме аппаратное обеспечение эвм
DOC
тест по теме устройство компьютера (20 вопросов)
DOC
тест Atutor аппаратное обеспечение
DOC
итоговый тест по дисциплине аппаратное обеспечение эвм
DOC
тест по теме основные устройства компьютера
DOC
тесты сортировка в бд Excel
DOCX
тест создание и модифиация структуры бд
DOC
тест система управления базами данных
DOCX
тест работа с макросами и внешними данными
DOCX
тест по Sql
DOCX
тест ключи, связи, индексы поиск и фильтрация
DOCX
тест запросы
DOC
тест бд
DOC
тест база данных. основные функции
DOC
тестирование по разделу архитектура эвм
DOC
тест треннинг по архитектуре
DOC
тест треннинг по архитектуре
выступление на совет директоров
тест по теме системы счисления
тест по теме компьютерные коммуникации
тест по теме аппаратное обеспечение эвм
тест по теме устройство компьютера (20 вопросов)
тест Atutor аппаратное обеспечение
итоговый тест по дисциплине аппаратное обеспечение эвм
тест по теме основные устройства компьютера
тесты сортировка в бд Excel
тест создание и модифиация структуры бд
тест система управления базами данных
тест работа с макросами и внешними данными
тест по Sql
тест ключи, связи, индексы поиск и фильтрация
тест запросы
тест бд
тест база данных. основные функции
тестирование по разделу архитектура эвм
тест треннинг по архитектуре
тест треннинг по архитектуре

05

  • 1. Лекция 3. Системы счисления Что такое система счисления? Система счисления — это совокупность приемов и правил, по которым числа записывают- ся и читаются. Существуют позиционные и непозиционные системы счисления. В непозиционных системах счисления вес цифры (т. е. тот вклад, который она вносит в значение числа) не зависит от ее позиции в записи числа. Так, в римской системе счисления в числе ХХХII (тридцать два) вес цифры Х в любой позиции равен просто десяти. В позиционных системах счисления вес каждой цифры изменяется в зависимости от ее положения (позиции) в последовательности цифр, изображающих число. Например, в числе 757,7 первая семерка означает 7 сотен, вторая — 7 единиц, а третья — 7 десятых долей едини- цы. Сама же запись числа 757,7 означает сокращенную запись выражения 700 + 50 + 7 + 0,7 = 7 . 102 + 5. 101 + 7. 100 + 7. 10—1 = 757,7. Любая позиционная система счисления характеризуется своим основанием. Основание позиционной системы счисления — количество различных цифр, используемых для изображения чисел в данной системе счисления. За основание системы можно принять любое натуральное число — два, три, четыре и т.д. Следовательно, возможно бесчисленное множество позиционных систем: двоичная, троич- ная, четверичная и т.д. Запись чисел в каждой из систем счисления с основанием q означает сокращенную запись выражения an-1 qn-1 + an-2 qn-2 + ... + a1 q1 + a0 q0 + a-1 q-1 + ... + a-m q-m , где ai — цифры системы счисления; n и m — число целых и дробных разрядов, соответствен- но. Например: Как порождаются целые числа в позиционных системах счисле- ния? В каждой системе счисления цифры упорядочены в соответствии с их значениями: 1 боль- ше 0, 2 больше 1 и т.д. Продвижением цифры называют замену её следующей по величине. Продвинуть цифру 1 значит заменить её на 2, продвинуть цифру 2 значит заменить её на 3 и т.д. Продвижение старшей цифры (например, цифры 9 в десятичной системе) означает за- мену её на 0. В двоичной системе, использующей только две цифры — 0 и 1, продвижение 0 оз- начает замену его на 1, а продвижение 1 — замену её на 0. Целые числа в любой системе счисления порождаются с помощью Правила счета [44]: Для образования целого числа, следующего за любым данным целым числом, нужно продвинуть самую правую цифру числа; если какая-либо цифра после про-
  • 2. движения стала нулем, то нужно продвинуть цифру, стоящую слева от неё. Применяя это правило, запишем первые десять целых чисел • в двоичной системе: 0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001; • в троичной системе: 0, 1, 2, 10, 11, 12, 20, 21, 22, 100; • в пятеричной системе: 0, 1, 2, 3, 4, 10, 11, 12, 13, 14; • в восьмеричной системе: 0, 1, 2, 3, 4, 5, 6, 7, 10, 11. Какие системы счисления используют специалисты для общения с компьютером? Кроме десятичной широко используются системы с основанием, являющимся целой степе- нью числа 2, а именно: • двоичная (используются цифры 0, 1); • восьмеричная (используются цифры 0, 1, ..., 7); • шестнадцатеричная (для первых целых чисел от нуля до девяти используются цифры 0, 1, ..., 9, а для следующих чисел — от десяти до пятнадцати — в качестве цифр использу- ются символы A, B, C, D, E, F). Полезно запомнить запись в этих системах счисления первых двух десятков целых чисел: 10-я 2-я 8-я 16-я 0 0 0 0 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-я 2-я 8-я 16-я 10 1010 12 A 11 1011 13 B 12 1100 14 C 13 1101 15 D 14 1110 16 E 15 1111 17 F 16 10000 20 10 17 10001 21 11 18 10010 22 12 19 10011 23 13 Из всех систем счисления особенно проста и поэтому интересна для технической реали- зации в компьютерах двоичная система счисления. Почему люди пользуются десятичной системой, а компьютеры — двоичной? Люди предпочитают десятичную систему, вероятно, потому, что с древних времен считали по пальцам, а пальцев у людей по десять на руках и ногах. Не всегда и не везде люди пользуют- ся десятичной системой счисления. В Китае, например, долгое время пользовались пятеричной системой счисления.
  • 3. А компьютеры используют двоичную систему потому, что она имеет ряд преимуществ пе- ред другими системами: • для ее реализации нужны технические устройства с двумя устойчивыми состояния- ми (есть ток — нет тока, намагничен — не намагничен и т.п.), а не, например, с десятью, — как в десятичной; • представление информации посредством только двух состояний надежно и помехо- устойчиво; • возможно применение аппарата булевой алгебры для выполнения логических преоб- разований информации; • двоичная арифметика намного проще десятичной. Недостаток двоичной системы — быстрый рост числа разрядов, необходимых для записи чи- сел. Почему в компьютерах используются также восьмеричная и шест- надцатеричная системы счисления? Двоичная система, удобная для компьютеров, для человека неудобна из-за ее громоздкости и непривычной записи. Перевод чисел из десятичной системы в двоичную и наоборот выполняет машина. Однако, чтобы профессионально использовать компьютер, следует научиться понимать слово машины. Для этого и разработаны восьмеричная и шестнадцатеричная системы. Числа в этих системах читаются почти так же легко, как десятичные, требуют соответст- венно в три (восьмеричная) и в четыре (шестнадцатеричная) раза меньше разрядов, чем в дво- ичной системе (ведь числа 8 и 16 — соответственно, третья и четвертая степени числа 2). Перевод восьмеричных и шестнадцатеричных чисел в двоичную систему очень прост: дос- таточно каждую цифру заменить эквивалентной ей двоичной триадой (тройкой цифр) или тетрадой (четверкой цифр). Например: Чтобы перевести число из двоичной системы в восьмеричную или шестнадцатеричную, его нужно разбить влево и вправо от запятой на триады (для восьмеричной) или тетрады (для шестнадцатеричной) и каждую такую группу заменить соответствующей восьмерич- ной (шестнадцатеричной) цифрой. Например,
  • 4. Как перевести целое число из десятичной системы в любую другую позиционную систему счисления? Для перевода целого десятичного числа N в систему счисления с основанием q необходи- мо N разделить с остатком ("нацело") на q , записанное в той же десятичной системе. За- тем неполное частное, полученное от такого деления, нужно снова разделить с остатком на q , и т.д., пока последнее полученное неполное частное не станет равным нулю. Представле- нием числа N в новой системе счисления будет последовательность остатков деления, изо- браженных одной q-ичной цифрой и записанных в порядке, обратном порядку их получе- ния. Пример: Переведем число 75 из десятичной системы в двоичную, восьмеричную и шест- надцатеричную: Ответ: 7510 = 1 001 0112 = 1138 = 4B16. 4.7. Как пеpевести пpавильную десятичную дpобь в любую другую позиционную систему счисления? Для перевода правильной десятичной дpоби F в систему счисления с основанием q необ- ходимо F умножить на q , записанное в той же десятичной системе, затем дробную часть полученного произведения снова умножить на q, и т. д., до тех пор, пока дpобная часть оче- редного пpоизведения не станет pавной нулю, либо не будет достигнута требуемая точность изображения числа F в q-ичной системе. Представлением дробной части числа F в новой системе счисления будет последовательность целых частей полученных произведений, за- писанных в порядке их получения и изображенных одной q-ичной цифрой. Если требуемая точность перевода числа F составляет k знаков после запятой, то предельная абсолютная погрешность при этом равняется q -(k+1) / 2. Пример. Переведем число 0,36 из десятичной системы в двоичную, восьмеричную и шест- надцатеричную:
  • 5. Для чисел, имеющих как целую, так и дробную части, перевод из десятичной системы счис- ления в другую осуществляется отдельно для целой и дробной частей по правилам, указан- ным выше. Как пеpевести число из двоичной (восьмеpичной, шестнадцатеpичной) системы в десятичную? Перевод в десятичную систему числа x, записанного в q-ичной cистеме счисления (q = 2, 8 или 16) в виде xq = (anan-1 ... a0 , a-1 a-2 ... a-m)q сводится к вычислению значения много- члена x10 = an qn + an-1 qn-1 + ... + a0 q0 + a-1 q -1 + a-2 q-2 + ... + a-m q-m средствами десятичной арифметики. Примеpы: 4.9. Сводная таблица переводов целых чисел из одной системы счисления в другую Рассмотрим только те системы счисления, которые применяются в компьютерах — деся- тичную, двоичную, восьмеричную и шестнадцатеричную. Для определенности возьмем произ- вольное десятичное число, например 46, и для него выполним все возможные последователь- ные переводы из одной системы счисления в другую. Порядок переводов определим в соответ- ствии с рисунком:
  • 6. На этом рисунке использованы следующие обозначения: • в кружках записаны основания систем счисления; • стрелки указывают направление перевода; • номер рядом со стрелкой означает порядковый номер соответствующего примера в свод- ной таблице 4.1. Например: означает перевод из двоичной системы в шестнадцатеричную, имеющий в таблице порядковый номер 6. Сводная таблица переводов целых чисел Таблица 4.1.
  • 7. Как производятся арифметические операции в позиционных систе- мах счисления? Рассмотрим основные арифметические операции: сложение, вычитание, умножение и де- ление. Правила выполнения этих операций в десятичной системе хорошо известны — это сло- жение, вычитание, умножение столбиком и деление углом. Эти правила применимы и ко всем другим позиционным системам счисления. Только таблицами сложения и умножения надо пользоваться особыми для каждой системы.
  • 8. С л о ж е н и е Таблицы сложения легко составить, используя Правило Счета. Сложение в двоичной системе Сложение в восьмеричной системе Сложение в шестнадцатиричной системе При сложении цифры суммируются по разрядам, и если при этом возникает избыток, то он пе- реносится влево. Пример 1. Сложим числа 15 и 6 в различных системах счисления. Шестнадцатеричная: F16+616 Ответ: 15+6 = 2110 = 101012 = 258 = 1516. Проверка. Преобразуем полученные суммы к десятичному виду: 101012 = 24 + 22 + 20 = 16+4+1=21, 258 = 2 . 81 + 5 . 80 = 16 + 5 = 21, 1516 = 1. 161 + 5. 160 = 16+5 = 21.
  • 9. Пример 2. Сложим числа 15, 7 и 3. Шестнадцатеричная: F16+716+316 Ответ: 5+7+3 = 2510 = 110012 = 318 = 1916. Проверка: 110012 = 24 + 23 + 20 = 16+8+1=25, 318 = 3 . 81 + 1 . 80 = 24 + 1 = 25, 1916 = 1. 161 + 9. 160 = 16+9 = 25. Пример 3. Сложим числа 141,5 и 59,75. Ответ: 141,5 + 59,75 = 201,2510 = 11001001,012 = 311,28 = C9,416 Проверка. Преобразуем полученные суммы к десятичному виду: 11001001,012 = 27 + 26 + 23 + 20 + 2-2 = 201,25 311,28 = 3 . 82 + 181 + 1 . 80 + 2 . 8-1 = 201,25 C9,416 = 12 . 161 + 9 . 160 + 4 . 16-1 = 201,25 В ы ч и т а н и е Пример 4. Вычтем единицу из чисел 102, 108 и 1016
  • 10. Пример 5. Вычтем единицу из чисел 1002, 1008 и 10016. Пример 6. Вычтем число 59,75 из числа 201,25. Ответ: 201,2510 - 59,7510 = 141,510 = 10001101,12 = 215,48 = 8D,816. Проверка. Преобразуем полученные разности к десятичному виду: 10001101,12 = 27 + 23 + 22 + 20 + 2-1 = 141,5; 215,48 = 2 . 82 + 1 . 81 + 5 . 80 + 4 . 8-1 = 141,5; 8D,816 = 8. 161 + D. 160 + 8. 16-1 = 141,5. У м н о ж е н и е Выполняя умножение многозначных чисел в различных позиционных системах счисления, можно использовать обычный алгоритм перемножения чисел в столбик, но при этом результа- ты перемножения и сложения однозначных чисел необходимо заимствовать из соответствую- щих рассматриваемой системе таблиц умножения и сложения. Умножение в двоичной системе Умножение в восьмеричной системе Ввиду чрезвычайной простоты таблицы умножения в двоичной системе, умножение сво- дится лишь к сдвигам множимого и сложениям.
  • 11. Пример 7. Перемножим числа 5 и 6. Ответ: 5 . 6 = 3010 = 111102 = 368. Проверка. Преобразуем полученные произведения к десятичному виду: 111102 = 24 + 23 + 22 + 21 = 30; 368 = 381 + 680 = 30. Пример 8. Перемножим числа 115 и 51. Ответ: 115 . 51 = 586510 = 10110111010012 = 133518. Проверка. Преобразуем полученные произведения к десятичному виду: 10110111010012 = 212 + 210 + 29 + 27 + 26 + 25 + 23 + 20 = 5865; 133518 = 1. 84 + 3. 83 + 3. 82 + 5. 81 + 1. 80 = 5865. Д е л е н и е Деление в любой позиционной системе счисления производится по тем же правилам, как и де- ление углом в десятичной системе. В двоичной системе деление выполняется особенно просто, ведь очередная цифра частного может быть только нулем или единицей. Пример 9. Разделим число 30 на число 6. Ответ: 30 : 6 = 510 = 1012 = 58. Пример 10. Разделим число 5865 на число 115. Восьмеричная: 133518 :1638 Ответ: 5865 : 115 = 5110 = 1100112 = 638.
  • 12. Проверка. Преобразуем полученные частные к десятичному виду: 1100112 = 25 + 24 + 21 + 20 = 51; 638 = 6. 81 + 3. 80 = 51. Пример 11. Разделим число 35 на число 14. Восьмеричная: 438 : 168 Ответ: 35 : 14 = 2,510 = 10,12 = 2,48. Проверка. Преобразуем полученные частные к десятичному виду: 10,12 = 21 + 2 -1 = 2,5; 2,48 = 2. 80 + 4. 8-1 = 2,5. Как представляются в компьютере целые числа? Целые числа могут представляться в компьютере со знаком или без знака. Целые числа без знака Обычно занимают в памяти компьютера один или два байта. В однобайтовом фор- мате принимают значения от 000000002 до 111111112. В двубайтовом формате - от 00000000 000000002 до 11111111 111111112. Диапазоны значений целых чисел без знака Формат чис- ла в байтах Диапазон Запись с порядком Обычная запись 1 0 ... 28 -1 0 ... 255 2 0 ... 216 -1 0 ... 65535 Примеры: а) число 7210 = 10010002 в однобайтовом формате: б) это же число в двубайтовом формате: в) число 65535 в двубайтовом формате: Целые числа со знаком Обычно занимают в памяти компьютера один, два или четыре байта, при этом самый ле- вый (старший) разряд содержит информацию о знаке числа.
  • 13. Диапазоны значений целых чисел со знаком Формат числа в байтах Диапазон Запись с порядком Обычная запись 1 -27 ... 27 -1 -128 ... 127 2 -215 ... 215 -1 -32768 ... 32767 4 -231 ... 231 -1 -2147483648 ... 2147483647 Рассмотрим особенности записи целых чисел со знаком на примере однобайтового фор- мата, при котором для знака отводится один разряд, а для цифр абсолютной величины - семь разрядов. В компьютерной технике применяются три формы записи (кодирования) целых чисел со знаком: прямой код, обратный код, дополнительный код. Последние две формы применяются особенно широко, так как позволяют упростить конст- рукцию арифметико-логического устройства компьютера путем замены разнообразных арифме- тических операций операцией cложения. Положительные числа в прямом, обратном и дополнительном кодах изображаются оди- наково - двоичными кодами с цифрой 0 в знаковом разряде. Например: Отрицательные числа в прямом, обратном и дополнительном кодах имеют разное изо- бражение. 1. Прямой код. В знаковый разряд помещается цифра 1, а в разряды цифровой части числа — двоичный код его абсолютной величины. Например: 2. Обратный код. Получается инвертированием всех цифр двоичного кода абсолютной ве- личины числа, включая разряд знака: нули заменяются единицами, а единицы — нулями. На- пример: 3. Дополнительный код. Получается образованием обратного кода с последующим при- бавлением единицы к его младшему разряду. Например: Обычно отрицательные десятичные числа при вводе в машину автоматически преоб- разуются в обратный или дополнительный двоичный код и в таком виде хранятся, переме- щаются и участвуют в операциях. При выводе таких чисел из машины происходит обратное преобразование в отрицательные десятичные числа.
  • 14. Как компьютер выполняет арифметические действия над целыми числами? Сложение и вычитание В большинстве компьютеров операция вычитания не используется. Вместо нее про- изводится сложение обратных или дополнительных кодов уменьшаемого и вычитаемого. Это позволяет существенно упростить конструкцию АЛУ. Сложение обратных кодов. Здесь при сложении чисел А и В имеют место четыре ос- новных и два особых случая: 1. А и В положительные. При суммировании складываются все разряды, включая разряд знака. Так как знаковые разряды положительных слагаемых равны нулю, разряд знака суммы тоже равен нулю. Например: Получен правильный результат. 2. А положительное, B отрицательное и по абсолютной величине больше, чем А. На- пример: Получен правильный результат в обратном коде. При переводе в прямой код биты цифровой части результата инвертируются: 1 0000111 = -710. 3. А положительное, B отрицательное и по абсолютной величине меньше, чем А. На- пример: Компьютер исправляет полученный первоначально неправильный результат (6 вместо 7) пере- носом единицы из знакового разряда в младший разряд суммы. 4. А и В отрицательные. Например: Полученный первоначально неправильный результат (обратный код числа -1110 вместо об- ратного кода числа -1010) компьютер исправляет переносом единицы из знакового разряда в младший разряд суммы. При переводе результата в прямой код биты цифровой части числа ин- вертируются: 1 0001010 = -1010.
  • 15. При сложении может возникнуть ситуация, когда старшие разряды результата операции не помещаются в отведенной для него области памяти. Такая ситуация называется переполнени- ем разрядной сетки формата числа. Для обнаружения переполнения и оповещения о возник- шей ошибке в компьютере используются специальные средства. Ниже приведены два возмож- ных случая переполнения. 5. А и В положительные, сумма А+В больше, либо равна 2n-1 , где n — количество разря- дов формата чисел (для однобайтового формата n=8, 2n-1 = 27 = 128). Например: Семи разрядов цифровой части числового формата недостаточно для размещения восьми- разрядной суммы (16210 = 101000102), поэтому старший разряд суммы оказывается в знако- вом разряде. Это вызывает несовпадение знака суммы и знаков слагаемых, что является свидетельством переполнения разрядной сетки. 6. А и В отрицательные, сумма абсолютных величин А и В больше, либо равна 2n-1 . Например: Здесь знак суммы тоже не совпадает со знаками слагаемых, что свидетельствует о пере- полнении разрядной сетки. Сложение дополнительных кодов. Здесь также имеют место рассмотренные выше шесть случаев: 1. А и В положительные. Здесь нет отличий от случая 1, рассмотренного для обратного кода. 2. А положительное, B отрицательное и по абсолютной величине больше, чем А. На- пример: Получен правильный результат в дополнительном коде. При переводе в прямой код биты циф- ровой части результата инвертируются и к младшему разряду прибавляется единица: 1 0000110 + 1 = 1 0000111 = -710. 3. А положительное, B отрицательное и по абсолютной величине меньше, чем А. На- пример: Получен правильный результат. Единицу переноса из знакового разряда компьютер отбрасыва- ет. 4. А и В отрицательные.
  • 16. Например: Получен правильный результат в дополнительном коде. Единицу переноса из знакового разря- да компьютер отбрасывает. Случаи переполнения для дополнительных кодов рассматриваются по аналогии со слу- чаями 5 и 6 для обратных кодов. Сравнение рассмотренных форм кодирования целых чисел со знаком показывает: • на преобразование отрицательного числа в обратный код компьютер затрачивает меньше времени, чем на преобразование в дополнительный код, так как последнее состоит из двух шагов — образования обратного кода и прибавления единицы к его младшему разряду; • время выполнения сложения для дополнительных кодов чисел меньше, чем для их обратных кодов, потому что в таком сложении нет переноса единицы из знакового раз- ряда в младший разряд результата. Умножение и деление Во многих компьютерах умножение производится как последовательность сложений и сдвигов. Для этого в АЛУ имеется регистр, называемый накапливающим сумматором, кото- рый до начала выполнения операции содержит число ноль. В процессе выполнения операции в нем поочередно размещаются множимое и результаты промежуточных сложений, а по за- вершении операции — окончательный результат. Другой регистр АЛУ, участвующий в выполнении этой операции, вначале содержит мно- житель. Затем по мере выполнения сложений содержащееся в нем число уменьшается, пока не достигнет нулевого значения. Для иллюстрации умножим 1100112 на 1011012. Деление для компьютера является трудной операцией. Обычно оно реализуется путем многократного прибавления к делимому дополнительного кода делителя.
  • 17. Упражнения 4.1. Используя Правило Счета, запишите первые 20 целых чисел в десятичной, двоичной, тро- ичной, пятеричной и восьмеричной системах счисления. 4.2. Какие целые числа следуют за числами: а) 12; е) 18; п) F16; б) 1012; ж) 78; м) 1F16; в) 1112; з) 378; н) FF16; г) 11112; и) 1778; о) 9AF916; д) 1010112; к) 77778; п) CDEF16 ? 4.3. Какие целые числа предшествуют числам: а) 102; е) 108; л) 1016; б) 10102; ж) 208; м)2016; в) 10002; з) 1008; н) 10016; г) 100002; и) 1108; о) A1016; д) 101002; к) 10008; п) 100016 ? 4.4. Какой цифрой заканчивается четное двоичное число? Какой цифрой заканчивается нечет- ное двоичное число? Какими цифрами может заканчиваться четное троичное число? 4.5. Какое наибольшее десятичное число можно записать тремя цифрами: o а) в двоичной системе; o б) в восьмеричной системе; o в) в шестнадцатеричной системе? 4.6. В какой системе счисления 21 + 24 = 100? Решение. Пусть x — искомое основание системы счисления. Тогда 100x = 1 · x2 + 0 · x1 + 0 · x0 , 21x = 2 · x1 + 1 · x0 , 24x = 2 · x1 + 4 · x0 . Таким образом, x2 = 2x + 2x + 5 или x2 - 4x - 5 = 0. Положительным корнем этого квадратного уравнения является x = 5. Ответ. Числа записаны в пятеричной системе счисления. 4.7. В какой системе счисления справедливо следующее: o а) 20 + 25 = 100; o б) 22 + 44 = 110? 4.8. Десятичное число 59 эквивалентно числу 214 в некоторой другой системе счисления. Найдите основание этой системы. 4.9. Переведите числа в десятичную систему, а затем проверьте результаты, выполнив об- ратные переводы: а) 10110112; е) 5178; л) 1F16; б) 101101112; ж) 10108; м) ABC16; в) 0111000012; з) 12348; н) 101016; г) 0,10001102; и) 0,348; о) 0,А416; д) 110100,112; к) 123,418; п) 1DE,C816. 4.10. Переведите числа из десятичной системы в двоичную, восьмеричную и шестнадцате- ричную, а затем проверьте результаты, выполнив обратные переводы: а) 12510; б) 22910; в) 8810; г) 37,2510; д) 206,12510. 4.11. Переведите числа из двоичной системы в восьмеричную и шестнадцатеричную, а за- тем проверьте результаты, выполнив обратные переводы: а) 1001111110111,01112; г) 1011110011100,112; б) 1110101011,10111012; д) 10111,11111011112; в) 10111001,1011001112; е) 1100010101,110012. 4.12. Переведите в двоичную и восьмеричную системы шестнадцатеричные числа: а) 2СE16; б) 9F4016; в) ABCDE16; г) 1010,10116; д) 1ABC,9D16. 4.13. Выпишите целые числа:
  • 18. o а) от 1011012 до 1100002 в двоичной системе; o б) от 2023 до 10003 в троичной системе; o в) от 148 до 208 в восьмеричной системе; o г) от 2816 до 3016 в шестнадцатеричной системе. 4.14. Для десятичных чисел 47 и 79 выполните цепочку переводов из одной системы счис- ления в другую: 4.15. Составьте таблицы сложения однозначных чисел в троичной и пятеричной системах счисления. 4.16. Составьте таблицы умножения однозначных чисел в троичной и пятеричной системах счисления. 4.17. Сложите числа, а затем проверьте результаты, выполнив соответствующие десятичные сложения: а) 10111012 и 11101112; д) 378 и 758; и) A16 и F16; б) 1011,1012 и 101,0112; е) 1658 и 378; к) 1916 и C16; в) 10112, 112 и 111,12; ж) 7,58 и 14,68; л) A,B16 и E,F16; г) 10112 , 11,12 и 1112; з) 68, 178 и 78; м) E16, 916 и F16. 4.18. В каких системах счисления выполнены следующие сложения? Найдите основания каждой системы: 4.19. Найдите те подстановки десятичных цифр вместо букв, которые делают правильными выписанные результаты (разные цифры замещаются разными буквами): 4.20. Вычтите: а) 1112 из 101002; д) 158 из 208; и) 1А16 из 3116; б) 10,112 из 100,12; е) 478 из 1028; к) F9E16 из 2А3016; в) 111,12 из 100102; ж) 56,78 из 1018; л) D,116 из B,9216; г) 100012 из 1110,112; з) 16,548 из 30,018; м) ABC16 из 567816. 4.21. Перемножьте числа, а затем проверьте результаты, выполнив соответствующие деся- тичные умножения: а) 1011012 и 1012; д) 378 и 48; б) 1111012 и 11,012; е) 168 и 78; в) 1011,112 и 101,12; ж) 7,58 и 1,68; г) 1012 и 1111,0012; з) 6,258 и 7,128. 4.22. Разделите 100101102 на 10102 и проверьте результат, умножая делитель на частное. 4.23. Разделите 100110101002 на 11002 и затем выполните соответствующее десятичное и вось- меричное деление. 4.24. Вычислите значения выражений: o а) 2568 + 10110,12 . (608 + 1210) - 1F16; o б) 1AD16 - 1001011002 : 10102 + 2178;
  • 19. o в) 101010 + (10616 - 110111012) 128; o г) 10112 . 11002 : 148 + (1000002 - 408). 4.25. Расположите следующие числа в порядке возрастания: o а) 748, 1100102, 7010, 3816; o б) 6E16, 1428, 11010012, 10010; o в) 7778, 1011111112, 2FF16, 50010; o г) 10010, 11000002, 6016, 1418. 4.26. Запишите уменьшающийся ряд чисел +3, +2, ..., -3 в однобайтовом формате: o а) в прямом коде; o б) в обратном коде; o в) в дополнительном коде. 4.27. Запишите числа в прямом коде (формат 1 байт): а) 31; б) -63; в) 65; г) -128. 4.28. Запишите числа в обратном и дополнительном кодах (формат 1 байт): а) -9; б) -15; в) -127; г) -128. 4.29. Найдите десятичные представления чисел, записанных в дополнительном коде: а) 1 1111000; б) 1 0011011; в) 1 1101001; г) 1 0000000. 4.30. Найдите десятичные представления чисел, записанных в обратном коде: а) 1 1101000; б) 1 0011111; в) 1 0101011; г) 1 0000000. 4.31. Выполните вычитания чисел путем сложения их обратных (дополнительных) кодов в фор- мате 1 байт. Укажите, в каких случаях имеет место переполнение разрядной сетки: а) 9 - 2; г) -20 - 10; ж) -120 - 15; б) 2 - 9; д) 50 - 25; з) -126 - 1; в) -5 - 7; е) 127 - 1; и) -127 - 1. Ответы — Раздел 4. Арифметические основы компьютеров 4.1. в) троичная: 0, 1, 2, 10, 11, 12, 20, 21, 22, 100, 101, 102, 110, 111, 112, 120, 121, 122, 200, 201; г) пятеричная: 0, 1, 2, 3, 4, 10, 11, 12, 13, 14, 20, 21, 22, 23, 24, 30, 31, 32, 33, 34. 4.2. а) 102; б) 1102; в) 10002; г) 100002; д) 1011002; е) 28; ж) 108; з) 408; и) 2008; к) 100008; л) 1016; м) 2016; н) 10016; о) 9AFA16; п) CDF016. 4.3. а) 12; б) 10012; в) 1112; г) 11112; д) 100112; е) 78; ж) 178; з) 778; и) 1078; к) 7778; л) F16; м) 1F16; н) FF16; о) A0F16; п) FFF16. 4.4. Четное двоичное число оканчивается цифрой 0, нечетное двоичное — цифрой 1, чет- ное троичное — цифрами 0, 1 или 2. 4.5. а) 7; б) 511; в) 4091. 4.7. а) ни в какой; б) в шестеричной. 4.8. Основание 5. 4.9. а) 91; б) 183; в) 225; г) 35 /64; д) 52,75; е) 335; ж) 520; з) 668; и) 7 /16; к) 8333 /64; л) 31; м) 2748; н) 4112; о) 41 /64; п) 47825 /32. 4.10. а) 11111012; 1758; 7D16; б) 111001012; 3458; E516; в) 10110002; 1308; 5816; г) 100101,012; 45,28; 25,416; д) 11001110,0012; 316,18; CE,216. 4.11. а) 11767,348; 13F7,716; б) 1653,5648; 3AB,BA16; в) 271,5478; B9,B3816; г) 13634,68; 179C,C16; д) 27,76748; 17,FBC16; е) 1425,628; 315,C816. 4.12. а) 10110011102; 13168; б) 10011111010000002; 1175008; в) 101010111100110111102; 25363368; г) 1000000010000,0001000000012; 10020,04018; д) 1101010111100,100111012; 15274,4728. 4.13. а) 1011012, 1011102, 1011112, 1100002; б) 2023, 2103, 2113, 2123, 2203, 2213, 2223, 10003; в) 148, 158, 168, 178, 208; г) 2816, 2916, 2A16, 2B16, 2C16, 2D16, 2E16, 2F16, 3016; 4.14. а) 4710 - 1011112 - 578 - 4710 - 578 - 1011112 - 2F16 - 4710 - 2F16 - 1011112 - 4710; б) 7910 - 10011112 - 1178 - 7910 - 1178 - 10011112 - 4F16 - 7910 - 4F16 - 10011112 - 7910. 4.15. + 0 1 2 3 4
  • 20. 0 0 1 2 3 4 + 0 1 2 1 1 2 3 4 10 0 0 1 2 2 2 3 4 10 11 1 1 2 10 3 3 4 10 11 12 2 2 10 11 4 4 10 11 12 13 4.16. x 0 1 2 3 4 0 0 0 0 0 0 x 0 1 2 1 0 1 2 3 4 0 0 0 0 2 0 2 4 11 13 1 0 1 2 3 0 3 11 14 22 2 0 2 11 4 0 4 13 22 31 4.17. а) 110101002; б) 10001,02; в) 10101,12; г) 11001,12; д) 1348; е) 2248; ж) 24,38; з) 348; и) 1916; к) 2516; л) 19,A16; м) 2616. 4.18. а) в 16-й; б) в 10-й; в) в 3-й; г) в 8-й; д) в 16-й. 4.19. в) А=9, B=4, C=5, D=3, F=1, L=0, M=7, N=8; г) A=3, B=6, C=2, D=5, E=9, F=7, G=1, H=0, I=4, J=8; д) A=9, B=3, C=4, D=2, E=1, F=8, G=0, H=7, I=6. 4.20. а) 11012; б) 1,112; в) 1010,12; г) -10,012; д) 38; е) 338; ж) 22,18; з) 11,258; и) 1716; к) 1A9216; л) -1,7E16; м) 4BBC16. 4.21. а) 111000012; б) 11000110,012; в) 1000000,1012; г) 1001011,1012; д) 1748; е) 1428; ж) 15.268; з) 55.22228. 4.22. 11112. 4.23. 11001112; 10310; 1478. 4.24. а) 149310; б) 54210; в) 142010; г) 1110. 4.25. а) 1100102, 3816, 748, 7010; б) 1428, 10010, 11010012, 6E16; в) 1011111112, 50010, 7778, 2FF16; г) 11000002, 6016, 1418, 10010. 4.26. а) 00000011, 00000010, 00000001, 00000000, 10000001, 10000010, 10000011; б) 00000011, 00000010, 00000001, 00000000, 11111110, 11111101, 11111100; в) 00000011, 00000010, 00000001, 00000000, 11111111, 11111110, 11111101. 4.27. а) 00001111; б) 10111111; в) 01000001; г) невозможно. 4.28. Обратный: а) 11110110, б) 11110000, в) 10000000, г) невозможнo. Дополнительный: а) 11110111; б) 11110001; в) 10000001; г) 10000000. 4.29. а) -8; б) -101; в) -23; г) -128. 4.30. а) -23; б) -96; в) -84; г) -127. 4.31. Обратный: а) 00000111; б) 11111000; в) 11110011; г) 11100001; д) 00011001; е) 01111110; ж) переполнение; з) 10000000; и) невозможно. Дополнительный: а) 00000111; б) 11111001; в) 11110100; г) 11100010; д) 00011001; е) 01111110; ж) переполнение; з) 10000001; и) 10000000.