9
РАЗДЕЛ ПРЕДСТАВЛЕНИЕ ЧИСЕЛ В КОМПЬЮТЕРЕ.
АРИФМЕТИЧЕСКИЕ ОСНОВЫ ЭВМ
«Системы счисления»
Цель: сформировать умения записывать числа в различных системах счисления, переводить числа из одной системы счисления в другую, выполнять арифметические операции в позиционных системах счисления.
Основные понятия: число; система счисления; цифра; позиционные и непозиционные системы счисления; основание системы счисления; базис; кратные системы счисления; системы счисления, используемые в ЭВМ; арифметические операции над числами в позиционных системах счисления; разрядная сетка числа; нормализованный вид числа, знак числа, знак порядка, порядок, мантисса; переполнение; прямой, обратный, дополнительный коды числа.
Типовые задачи
определение основания, базиса, алфавита системы счисления по записи числа;
перевод целых чисел и правильных дробей в десятичную систему счисления по заданному алгоритму и используя позиционный принцип записи числа;
перевод целых чисел и правильных дробей из десятичной системы счисления по заданному алгоритму;
перевод двоичных чисел в восьмеричную и шестнадцатеричную системы по заданному алгоритму;
перевод чисел из восьмеричной и шестнадцатеричной систем счисления в двоичную по заданному алгоритму;
выполнение арифметических действий по правилам арифметики g-ичной системы счисления
ТИП ЗАДАЧ: ОПРЕДЕЛЕНИЕ ОСНОВАНИЯ, БАЗИСА, АЛФАВИТА СИСТЕМЫ СЧИСЛЕНИЯ
ЗАДАЧА
По заданному алфавиту позиционной системы счисления определите ее основание и базис.
а) {0, 1};
б) {0, 1, 2};
в) {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
г) {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F}.
Цель:
закрепить понятия “основание системы счисления”, “базис системы счисления”.
Виды деятельности: работа с определениями понятий.
ОТВЕТ
а) основание - 2; базис - ...2-2, 2-1, 20, 21, 22, 23, ... то есть ..., 1/4, 1/2, 1, 2, 4, 8, ...
б) основание - 3; базис - ...3-2, 3-1, 30, 31, 32, 33, ... то есть ..., 1/9, 1/3, 1, 3, 9, 27, ...
в) основание - 10; базис - ...10-2, 10-1, 100, 101, 102, 103, ... то есть ..., 1/100, 1/10, 1, 10, 100, 1000, ...
г) основание - 16; базис - ...16-2, 16-1, 160, 161, 162, ... то есть ..., 1/256, 1/16, 1, 16, 256, ...
ЗАДАЧА
Сейчас 22 часа 39 минут 56 секунд. Сколько времени будет на часах через 2 часа 45 минут 12 секунд?
В системе счисления с каким основанием представлены данные числа? Какой алфавит используется для их записи?
Цель:
раскрыть второй аспект понятия “основание системы счисления”.
Виды деятельности: вычисления, анализ.
РЕШЕНИЕ
Основание системы счисления определяется двояко. С одной стороны, это количество цифр, участвующих в записи числа. С другой стороны, это количество единиц младшего разряда, составляющих одну единицу более старшего разряда.
В данном примере 1 минута = 60 секундам, 1 час = 60 минутам, 1 сутки = 24 часам. Поэтому минуты и секунды представлены в системе счисления с основанием 60 (шестидесятиричная система счисления), а часы - в системе счисления с основанием 24. Но и часы, и минуты, и секунды в записи имеют лишь 10 цифр {0, 1, ..., 9}.
Для ответа на первый вопрос задачи сложим два значения времени:
56 с + 12 с = 68 с = 1 мин 08 с
39 мин + 45 мин + 1 мин = 85 мин = 1 час 25 мин
22 часа + 2 часа + 1 час = 25 часов = 1сутки 1 час.
Таким образом на часах будет 1 час 25 минут 08 секунд.
ЗАДАЧА
На основе позиционного принципа представьте следующие числа в форме многочлена (иная формулировка: разложите следующие числа по базису):
а) 50,0310
б) 101,012
в) 50А,В216
Цель:
закрепить понятия “базис системы счисления”, “разряд числа”, “вес разряда”.
Виды деятельности: использование формулы позиционного представления чисел.
ОТВЕТ
а) 508,0310 = 5102 + 0101 + 8100 + 010-1 + 310-2 = 5100 + 010 + 81 + 01/10 + 31/100
б) 101,012 = 122 + 021 + 120 + 02-1 + 12-2 = 14 + 02 + 11 + 01/2 + 11/4
в) 50А,Е216 = 5162 + 0161 + 10160 + 1416-1 + 216-2 = 5256 + 016 + 101 + 141/16 + 21/256
ТИП ЗАДАЧ: ПЕРЕВОД ЧИСЕЛ В ДЕСЯТИЧНУЮ СИСТЕМУ СЧИСЛЕНИЯ НА ОСНОВЕ ФОРМУЛЫ ПОЗИЦИОННОГО ПРЕДСТАВЛЕНИЯ
ЗАДАЧА
Перевести двоичное число 10111012 в десятичную систему счисления.
Цель:
научиться использовать формулу позиционного представления для перевода целых чисел из системы счисления с любым основанием в десятичную.
Виды деятельности: вычисления по формуле
РЕШЕНИЕ.
Пронумеруем разряды числа справа налево, начиная с нулевого. Разложим число по базису. Вычислим сумму произведений степеней основания системы счисления и цифр числа. Получим:

ОТВЕТ: 10111012 = 9310
ЗАДАЧА
Переведите следующие числа в десятичную систему счисления:
а) 101,012
б) 502,073
в) 50А,В216
Цель:
научиться использовать формулу позиционного представления для перевода вещественных чисел из системы счисления с любым основанием в десятичную.
Виды деятельности: вычисления по формуле
ОТВЕТ
а) 101,012 = 122 + 021 + 120 + 02-1 + 12-2 = 14 + 02 + 11 + 01/2 + 11/4 = 4+1+0,25 =5,2510
б) 502,073 =532 + 031 + 230 + 03-1 + 73-2 = 59 + 03 + 21 + 01/3 + 71/9 = 45 + 2 + 7/9 =
10 =47,(7)10
в) 50А,Е216 = 5162 + 0161 + 10160 + 1416-1 + 216-2 = 5256 + 016 + 101 + 141/16 + 21/256 = 1280 + 10 + 14/16 + 2/256 =
10 = 1290,882812510
ЗАДАЧА
Используя программу “Калькулятор” перевести в десятичную систему счисления числа:
1. 105168
2. 110010101112
3. 3B5D16
Цель
продемонстрировать возможности программы “Калькулятор (вид “Инженерный” или “Научный”)” по работе в 2-, 8-, 16-ричной системе счисления.
ОТВЕТ
105168 = 443010
110010101112 = 162310
3B5D16 = 1519710
ТИП ЗАДАЧ: ПЕРЕВОД ЦЕЛЫХ ЧИСЕЛ И ПРАВИЛЬНЫХ ДРОБЕЙ ИЗ ДЕСЯТИЧНОЙ В ИНЫЕ СИСТЕМЫ СЧИСЛЕНИЯ ПО ЗАДАННЫМ АЛГОРИТМАМ
АЛГОРИТМ 1
Для того, чтобы целое число Аq заменить равным ему целым числом Хр, необходимо число Аq разделить нацело по правилам q-арифметики на основание р. Остаток деления запомнить, а частное вновь нацело разделить на р. И так далее, пока частное не станет равно 0.
Цифрами искомого числа Хр являются остатки от деления, выписанные так, что последний остаток является цифрой старшего разряда числа Хр.
АЛГОРИТМ 2
Для того, чтобы исходную правильную дробь 0,Aq заменить равной ей правильной дробью 0,Хр, нужно 0,Aq умножить на основание р по правилам q-арифметики, целую часть полученного произведения считать цифрой старшего разряда искомой дроби. Дробную часть полученного произведения вновь умножить на р, целую часть полученного результата считать следующей цифрой искомой дроби. Эти операции продолжать до тех пор, пока дробная часть не окажется равной нулю, либо не будет достигнута требуемая точность.
ЗАДАЧА
Перевести десятичное число 26 в двоичную, троичную, шестнадцатеричную системы счисления.
Цель:
проработать алгоритм 1.
Виды деятельности: применение заданного алгоритма, вычисления.
РЕШЕНИЕ
2610 -- Х2 q=10, p=2  2610 = 110102 | 2610 -- Х3 q=10, p=3  2610 = 2223 | 2610 -- Х16 q=10, p=16  2610 = 1A16 |
ЗАДАЧА
Дробь 0,37510 перевести в двоичную, троичную, шестнадцатеричную системы счисления с точностью до третьего знака.
Цель:
проработать алгоритм 2.
Виды деятельности: действия по алгоритму, вычисления.
ОТВЕТ
А10 -- X2 | А10 -- X3 | А10 -- X16 |
0,375 * 2 = 0,750 0,75 * 2 = 1,50 0,5 * 2 = 1,0 (дробная часть равна 0) | 0,375 * 3 = 1,125 0,125 * 3 = 0, 375 0,375 * 3 = 1,125 0,125 * 3 = 0, 375 | 0,375 * 16 = 6,0 (дробная часть равна 0) |
0,37510=0,0112 | 0,37510=0,(10)3 | 0,37510=0,616 |
ТИП ЗАДАЧ: ПЕРЕВОД ЦЕЛЫХ ЧИСЕЛ И ПРАВИЛЬНЫХ ДРОБЕЙ ИЗ ИНЫХ СИСТЕМ СЧИСЛЕНИЯ В ДЕСЯТИЧНУЮ ПО ЗАДАННЫМ АЛГОРИТМАМ
АЛГОРИТМ 3
Для того чтобы данное целое число Аq заменить равным ему числом Xр, достаточно цифру старшего разряда числа Аq умножить по правилу р-арифметики на основание q. К полученному произведению прибавить цифру следующего разряда числа Аq Полученную сумму вновь умножить на q по правилам р-арифметики, вновь к полученному произведению прибавить цифру следующего (более младшего) разряда. И так до тех пор, пока не будет прибавлена младшая цифра числа Аq.
АЛГОРИТМ 4
Для того чтобы исходную правильную дробь 0,Aq заменить равной ей правильной дробью 0,Хр, необходимо цифру младшего разряда дроби 0,Аq разделить на основание q по правилам р-арифметики, к полученному частному прибавить цифру следующего (более старшего) разряда и далее поступать так же, как и с первой взятой цифрой.
Эти операции продолжать до тех пор, пока не будет прибавлена цифра старшего разряда искомой дроби. После этого полученную сумму разделить еще раз на р и к результату приписать запятую и нуль целых.
ЗАДАЧА
Перевести в десятичную систему счисления следующие числа:
а) 101102
б) 2078
в) 2F516
Цель:
проработать алгоритм 3.
Виды деятельности: применение заданного алгоритма, вычисления.
РЕШЕНИЕ
101102 -- X10 (((1*2+0)*2+1)*2+1)*2+0 = 2210 2) 5) 11) 22 | 2078 -- X10 (2*8+0)*8+7 = 13510 16) 135 | 2F516 -- X10 (2*16+15)*16+5 = 75710 47) 757 |
101102 -- X10 | 2078 -- X10 | 2F516 -- X10 |
ЗАДАЧА
Дроби перевести в десятичную систему счисления:
а) 0,11012
б) 0,3568
в) 0,А6Е16
Цель:
проработать алгоритм 4.
Виды деятельности: применение заданного алгоритма, вычисления.
РЕШЕНИЕ
1 : 2 + 0 = 0,5 0,5 : 2 + 1 = l,25 1,25 : 2 + 1 = 1,625 1,625 : 2 + 0 = 0,8125 | 6 : 8 +5 = 5,75 5,75 : 8 + 3 = 3,71875 3,71875 : 8 = 0,46484375 | 14 : 16 + 6 = 6,875 6,875 : 16 +10 = 10,4296875 10,4296875 : 16 = 0,65185546875 |
0,11012 = 0,812510 | 0,3568 = 0,4648437510 | 0,А6Е16 = 0,6518554687510 |
ТИП ЗАДАЧ: ПЕРЕВОД ЧИСЕЛ В КРАТНЫХ СИСТЕМАХ СЧИСЛЕНИЯ
АЛГОРИТМ 5
Для записи двоичного числа в системе счисления с основанием q = 2n достаточно данное двоичное число разбить на группы вправо и влево от десятичной точки по п цифр в каждой группе. Затем каждую такую группу следует рассмотреть как n-разрядное двоичное число и записать его как цифру в системе с основанием q=2n.
В крайних группах, если двоичных цифр оказалось меньше n, можно добавлять незначащие нули.
АЛГОРИТМ 6
Для замены числа, записанного в системе с основанием р = 2n, равным ему числом в двоичной системе счисления достаточно каждую цифру данного числа заменить n-разрядным двоичным числом.
ЗАДАЧА
Число 1011000010,001l0012 заменить равным ему числом восьмеричной и шестнадцатеричной систем счисления.
Цель:
проработать алгоритм 5.
Виды деятельности: применение алгоритма, вычисления.
РЕШЕНИЕ
Для перевода в восьмеричную систему счисления разбиваем двоичное число на группы по три цифры в каждой:
001 | 011 | 000 | 010 | , 001 | 100 | 100 | - двоичное число |
1 | 3 | 0 | 2 | ,1 | 4 | 4 | - восьмеричное число |
Внизу под каждой из групп выписаны цифры, соответствующие трехразрядным двоичным числам:
12 = 18 ; 0112 = 38 ; 0002 = 08 ; 0102 = 28 ; 0012 = 18 ; 1002 = 48
Для перевода в шестнадцатеричную систему счисления разбиваем двоичное число на группы по четыре цифры в каждой:
0010 | 1100 | 0010 | , 0011 | 0010 | - двоичное число |
2 | С | 2 | ,3 | 2 | - шестнадцатеричное число |
Внизу под каждой из групп выписаны цифры, соответствующие четырехразрядным двоичным числам:
102 = 216 ; 11002 = С16 ; 00102 = 216 ; 00112 = 316 ; 00102 = 216
ОТВЕТ
1011000010,001l0012 = 1302,1448
1011000010,001l0012 = 2С2,3216
ЗАДАЧА
Число 2607,348 заменить равным ему двоичным числом.
Цель:
проработать алгоритм 6.
Виды деятельности: применение алгоритма, вычисления.
ОТВЕТ
В соответствии алгоритмом запишем:
2 | 6 | 0 | 7 | ,3 | 4 | - восьмеричное число; |
010 | 110 | 000 | 111 | ,011 | 100 | - двоичное число. |
В результате получим 2607,248 = 10110000111,01112 .
ЗАДАЧА
Число 6В07,D416 заменить равным ему двоичным числом.
Цель:
проработать алгоритм 6.
Виды деятельности: применение алгоритма, вычисления.
ОТВЕТ
В соответствии алгоритмом запишем:
6 | B | 0 | 7 | ,D | 4 | - шестнадцатеричное число; |
0110 | 1011 | 0000 | 0111 | ,1101 | 0100 | - двоичное число. |
В результате получим 6B07,D416 = 110101100000111,1101012 .
Тема: Двоичная (троичная, шестнадцатеричная и т.п.) арифметика
Общие методические рекомендации
Важно показать, что при выполнении арифметических действий всегда нужно помнить второй аспект определения понятия “основание системы счисления”, а именно, что основание системы счисления равно количеству единиц младшего разряда, составляющего одну единицу более старшего разряда.
ТИП ЗАДАЧ: АРИФМЕТИЧЕСКИЕ ДЕЙСТВИЯ НАД ЦЕЛЫМИ ЧИСЛАМИ В РАЗНЫХ СИСТЕМАХ СЧИСЛЕНИЯ
ЗАДАЧА
Вычислить результаты сложения, вычитания, умножения и деления двоичных чисел 101102 и 10112. Осуществить проверку полученных результатов в десятичной системе счисления.
Цель:
Виды деятельности:
ОТВЕТ
ПРИМЕРЫ
10110 + 1011 100001 | _10110 1011 1011 | 10110 Х 1011 10110 10110 00000 10110 . 11110010 | _10110 |_1011 1011 10 0 |
2210 + 1110 = 3310 | 2210 - 1110 = 1110 | 2210 х 1110 = 24210 | 2210 : 1110 = 210 |
ТИП ЗАДАЧ: АРИФМЕТИЧЕСКИЕ ВЫЧИСЛЕНИЯ В СМЕШАННЫХ СИСТЕМАХ СЧИСЛЕНИЯ
ЗАДАЧА
Вычислить 101112 – 5116 : 338, записав результат в двоичной системе счисления
Цель:
повторить алгоритм 6.
Виды деятельности: применение алгоритма, вычисления.
ОТВЕТ
ПРИМЕЧАНИЕ
Дидактическая задача:
Тема: Представление чисел в памяти ЭВМ
Цель: сформировать умения представлять числа в нормализованном виде; находить сумму чисел по правилу сложения чисел с плавающей запятой; записывать прямой, обратный и дополнительный коды чисел
Основные понятия: нормализованный вид числа, мантисса, порядок; прямой, обратный и дополнительный код
ПРИМЕР
Число -123,4510 = -0,12345 103 в памяти компьютера будет представлено так:

ЗАДАЧА
“Раскодируйте” содержимое четырех байт памяти
а) как два целых числа;
б) как одно вещественное число
0100 0101 | 1000 0001 | 1000 0000 | 1000 0000 |
ОТВЕТ
а) +17793; -128
б) приблизительно +0,5058593 10-3
ЗАДАЧА
Найти сумму чисел А1 = 9,6098 и А2 = 98,009 по правилу сложения чисел с плавающей запятой
Решение.
Сложение чисел с плавающей запятой выполняется в соответствии со следующим алгоритмом:
1. Представить числа А1 и А2 в нормализованном виде, записав отдельно значения мантисс и порядков
2. Уравнять порядки по числу с большим порядком
3. Уравнять число цифр в мантиссе по числу, порядок которого не изменился
4. Сложить числа
5. Нормализовать сумму, оставив число цифр в мантиссе таким, как у числа, порядок которого не изменялся
Шаг | Число | Нормализованное число | Порядок | Мантисса | Число цифр в мантиссе |
1 | А1 = 9,6098 | 0,96098101 | p1 = 1 | 96098 | 5 |
| А2 = 98,009 | 0,98009102 | p2 = 2 | 98009 | 5 |
2 | А1 | 0,096098102 | 2 | 096098 | 6 |
3 | | 0,09609102 | | 09609 | 5 |
4 | А1 + А2 | 1,07618102 | 2 | – | – |
5 | | 0,10761103 | 3 | 10761 | 5 |
А1 = 0,09609102
+
А2 = 0,98009102
1,07618102
Ответ: 0,10761103
Типовые задачи
К типовым задачам можно отнести:
представление чисел в нормализованном виде в различных системах счисления;
сложение чисел с плавающей запятой;
составление прямого, обратного и дополнительного кодов для положительных и отрицательных чисел
Задача 1
Представить число 742,5019 в нормализованном виде в системе счисления с основанием
1. 10
2. 2
3. 8
4. 16
Задача 2
Найти сумму чисел А1 = 8,94 и А2 = 95,48603 по правилу сложения чисел с плавающей запятой
Задача 3
Записать прямой, обратный и дополнительный коды для двоичных чисел
1. 100100,0100001
2. – 100,01111101