Top.Mail.Ru
Персональный сайт учителя информатики Звездиной Веры Алексеевны

или Давайте учиться дружно!

Смотреть презентацию
Смотреть презентацию
Смотреть презентацию
Смотреть презентацию
Смотреть презентацию

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

(Статья "Системы счисления. Методика преподавания темы на уроках в 8–11-х классах с углубленным изучением информатики для подготовки к ГИА" и презентация к ней - лауреаты конкурса презентаций к уроку, опубликованы на сайте "1 Сентября. Открытый урок" 15.10.2019. )

Есть вопросы и замечания - пишите!

Система счисления  или нумерация – это способ записи (обозначения) чисел.

 

Возьмем это за основу работы с разными системами счисления, поскольку только способ записи у них будет разный, а все закономерности одинаковые. Поэтому в случае возникновения трудностей в понимании темы обращаемся к десятичной системе счисления и переносим аналог на остальные.

 

Символы, при помощи которых записываются числа, называются цифрами, а их совокупность – алфавитом системы счисления.  Количество цифр, составляющих алфавит, называется основанием (размерностью) системы счисления.  

 

Число в любой системе счисления состоит из цифр, входящих в алфавит этой системы.

Основание алфавита указывается в виде индекса числа, записанного в десятичной системе счисления, например:   10112,  1528,  1А716.

 

Индекс десятичной системы счисления обычно не указывается, так как она принята всеми к использованию  по умолчанию.

 

Обратим внимание, что

  • наименьшей цифрой в любой системе счисления является ноль, а наибольшая цифра всегда на единицу меньше основания.

В системе счисления, которой мы пользуемся в повседневной  жизни – 10 цифр (от 0 до 9), и поэтому такая система счисления называется десятичной.

Аналогично, если в системе счисления будет две цифры (0 и 1), то она называется двоичной, восемь цифр (от 0 до 7) – восьмеричной и т.д.

Основание системы счисления обозначается индексом рядом с числом, например: 1028, 1012 и т.д. При этом основание десятичной системы счисления можно не указывать (будем использовать то, что всем нам привычно - "по умолчанию").

 

Системы счисления бывают двух видов - позиционные и непозиционные.

 

Система счисления называется позиционной, если количественный эквивалент цифры зависит от ее разряда – позиции в записи числа.

Например, запишем одинаковыми цифрами несколько разных чисел:

                            1234 = 1 тысяча + 2 сотни + 3 десятка + 1 единица

                            3124 = 3 тысячи + 1 сотня + 2 десятка + 4 единицы

                            4321 = 4 тысячи + 3 сотни + 2 десятка +1 единица.

 

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

Например,  

                            3948 = 3*1000+9*100+4*10+8*1 = 3*103+9*102+4*101+8*100

                            10112 = 1*23+0*22+1*21+1*20    или  10112 = 1*20+1*21+0*22+1*23   

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

При этом форма записи числа в виде 3948 называется свернутой, а в виде 3*103+9*102+4*101+8*100   -  развернутой формой записи числа.

 

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

Так в римской системе счисления из двух цифр X - десять  и I - один можно составить числа: XI (одиннадцать),  IX (девять),  XIX (девятнадцать) или другие, но во всех них значения цифр в зависимости от занимаемых позиций не меняются, а значение числа получается разным при смене порядка следования цифр друг за другом.

 

Будем называть позиционные системы счисления дружественными (родственными), если в основании у них лежит одно и то же число, но в разных степенях. При этом «дружат» они через систему счисления с основанием в первой степени.

 

Например, двоичная, четверичная, восьмеричная и шестнадцатеричная  системы счисления «дружат» через двоичную, т.к.  в основании у них лежит число  2,  но в разных степенях:   

                            2=21,     4=22,    8=23,    16=24  

 

Будем считать, что десятичная  система счисления не дружит ни с какой другой,  так как ближайшая к ней система счисления с основанием 102=100  в практических вычислениях  нам не встречается.

 

Правила перевода между различными системами счисления делятся на две группы – между дружественными системами и недружественными.

 

Перевод между недружественными системами счисления всегда выполняется через десятичную систему следующим образом:

  • из десятичной системы счисления в любую – делением исходного числа на основание системы счисления, в которую переводим; при этом остатки от деления и последнее частное должны быть меньше этого основания. Частное и остатки от деления собираются справа налево;
  • из любой системы счисления в десятичную - умножением  цифр на «веса»  (степени основания) соответствующих разрядов и все полученные значения складываются.

Пример перевода десятичного числа  25 в двоичную систему счисления показан на рис.1.  

Собрав частное с остатками справа налево, получаем:

                   2510 = 110012    и обратно  110012 = 1*20+0*21+0*22+1*23+1*2= 25                      

 

Для быстрого и  точного перевода между дружественными  (и только между ними!) двоичной, восьмеричной  и шестнадцатеричной системами счисления построим таблицу соответствия десятичных, восьмеричных и шестнадцатеричных чисел двоичным, которую мои ученики называют  таблицей «дружбы» (рис.2). Левая часть этой таблицы включает цифры восьмеричной системы счисления, а правая дополняет ее для всех цифр шестнадцатеричной системы счисления.  Заметим, что так как каждая цифра в любой системе счисления занимает только одну позицию (один разряд числа), то в шестнадцатеричной системе счисления для записи цифр со значением больше 9 (здесь11, 12, …, 15 – это цифры, занимающие при записи в числе две позиции вместо одной!) используют латинские заглавные буквы от A до F.

        

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

При этом длина чисел в двоичной системе счисления зависит от степени двойки в основании дружественной системы счисления, т.е. для записи цифр двоичной системы счисления достаточно одного разряда (т.к. 2 = 21), четверичной - два (4 = 22), восьмеричной (8 = 23), а шестнадцатеричной – четыре (16=24). 

 

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

  • 8=23, то меняем одну восьмеричную цифру на три двоичные - триады,

  • 16 = 24, тогда меняем каждую шестнадцатеричную цифру на четыре двоичные  - тетрады,

дополняя их при необходимости до нужной длины незначащими нулями слева (добавление нулей справа от исходного числа является результатом умножения числа на 10, 100 и т.д., т.е. изменяет исходное число).

Например, на рис.3 показан перевод чисел 1528  и 15216 в  двоичную систему счисления с учетом этого правила. При этом показано, что первые нули можно не  указывать, т.к. они незначащие.

 

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

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

 

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

 

Закономерность 1.

  • Любое основание N в своей  системе счисления выглядит  как 10, т.е.

                                             N10 = 10N

           (210=102 – посмотрите в таблице, 810=108, 1610=1016  и т.д.).

 

Закономерность 2.

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

                                     Nk =   10…0N

                                                   k

           (посмотрите в таблице:  4=22=1002, 8=23 =10002, тогда 16=24=100002).

 

Закономерность 3.

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

                                           Nk - 1 =    (N-1)…(N-1)N

                                                                     k

                                  тогда      2k – 1 =  1…12   

                                                                 k                          

            (посмотрите в таблице:  3=22-1=112, 7=23 -1=1112, тогда 15=24-1=11112).

 

Закономерность 4.

  • Длина числа при переводе десятичного числа в любую систему счисления N легко определяется по формуле:

                                                 NL-1 ≤  Ch <  NL

           где Ch – исходное число,

                 N – основание системы счисления, куда переводим;

                 L -  длина после перевода в систему счисления с основанием N

            (например: 

                               22  ≤ 5 < 23,  тогда при переводе в двоичную систему счисления длина числа  будет

                                                  равна 3, посмотрите в таблице:   5=1012;

                               23  ≤ 13 < 24,  тогда при переводе в двоичную систему счисления длина числа будет

                                                    равна 4,  посмотрите в таблице:   13=10112).

 

Если закономерности 1, 2 и 3  применяются для быстрого и точного перевода чисел между системами счисления, то закономерность 4  используется для первичной проверки правильности перевода чисел из одной системы счисления в любую другую, что позволяет сэкономить время на проверке результата перевода и дает возможность  избежать ошибок. 

 

Но использование закономерностей вместе со знанием таблиц степеней двойки и «дружбы»  дает нам еще ряд преимуществ!

 

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

 

       Например:                  25 = 16 + 8 + 1 = 24 + 23 + 20                    (25 – 16 = 9 ;  9 = 8 + 1)

 

После этого,  заменяем присутствующие степени двойки единицами (в соответствии с закономерностью 2),  а пропущенные – нулями в порядке следования степеней, получая двоичную запись числа:

 

                                            25 = 16 + 8 + 1 = 24 + 23 + 20  = 110012

 

(отсутствующие  вторую и первую степени двойки заменяем нулями).

 

На чем еще можно сэкономить время и избежать ошибок?

 

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

                1100111012  = 110 011 1012  = 6358   =  5*80+3*81+6*82 = 5 + 24 + 384 = 413

или

                1100111012  = 1 1001 11012  = 19D16   =  13*160+9*161+1*162 = 13 + 144 + 256 = 413

 

 

Для выполнения арифметических действий над числами, записанными в различных системвх счисления, необходимо сначала привести все числа к системам счисления с одинаковым основанием (удобным для решения конкретной задачи) и только потом выполнять условие задачи.

 

 

ПРИМЕРЫ РЕШЕНИЯ ЗАДАЧ

 

Решим несколько задач из ОГЭ  по этой теме с использованием изложенных выше закономерностей.

 

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

 

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

 

    Решение:      11101012= 1 110 1012 = 1658 =  5+6*81+1*82 =5+48+64=117

            Или:      11101012= 111 01012 = 7516 =  5+7*161=5+112=117

        Ответ: 117

 

2. Переведите дво­ич­ное число 1100011 в де­ся­тич­ную систему счисления. В ответе укажите только число, основание системы счисления указывать не нужно.

 

        Решение:      11000112= 110 00112 = 7316 =  3+6*161=3+96=99  ( 1+21+25+26= 3+32+64=99)

        Ответ:  99

 

3. Переведите число 135 из десятичной системы счисления в двоичную систему счисления. Сколько единиц содержит полученное число? В ответе укажите одно число — количество единиц.

 

      Решение:                135 = 128+4+2+1= 27 + 22 + 21 + 20

      Ответ:   4 

 

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

 

4. Переведите число 125 из де­ся­тич­ной си­сте­мы счис­ле­ния в дво­ич­ную си­сте­му счисления. Сколь­ко еди­ниц со­дер­жит по­лу­чен­ное число? В от­ве­те ука­жи­те одно число —количество единиц.

 

      Решение:          125 = 127 – 2 = 11111112  -102 = 11111012

      Ответ:     6

 

5.  Переведите число FE из шест­на­дца­те­рич­ной си­сте­мы счис­ле­ния в дво­ич­ную си­сте­му счисления. В ответе укажите только число, основание системы счисления указывать не нужно.

 

      Решение:     FE16 =  1111 11102    (используем запись тетрадами из таблицы «дружбы»).

      Ответ: 11111110

 

6. Переведите число 143 из де­ся­тич­ной си­сте­мы счис­ле­ния в дво­ич­ную си­сте­му счисления. Сколь­ко зна­ча­щих нулей со­дер­жит по­лу­чен­ное число? В от­ве­те ука­жи­те одно число — ко­ли­че­ство нулей.

 

      Решение:    143 = 128+8+4+2+1 = 27 + 23 + 22 + 21 + 20 , то пропущены всего три (6,5 и 4) степени двойки.

      Ответ:  3

 

7. Переведите число 305 из де­ся­тич­ной си­сте­мы счис­ле­ния в дво­ич­ную си­сте­му счисления. Сколь­ко еди­ниц со­дер­жит по­лу­чен­ное число? В от­ве­те ука­жи­те одно число — ко­ли­че­ство единиц.

 

       Решение:  305 = 256 + 32 + 16 + 1 

                       (305-256=49, 49 - 32=17=16+1)

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

       Ответ:  4

 

8. Вычислите: 101010102 – 2528 + 716. Ответ запишите в десятичной системе счисления.

      

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

Переведем первое число в восьмеричную систему счисления:

                           101010102 = 2528

Тогда получаем выражение: 2528 – 2528 + 716 = 716 = 710

       Ответ: 7

 

9.  Вычислите значение выражения B916 − 2718. В ответе запишите вычисленное значение в десятичной системе счисления.

       Решение:  Переведем первое число в восьмеричную систему счисления:

                  В916 = 1011 10012 = 10 111 0012 = 2718.        Тогда   2718 - 2718 = 0.

       Ответ: 0

 

10. Вычислите значение выражения EB16 − 3528. Ответ запишите в десятичной системе счисления.

       Решение:   Переведем первое число в восьмеричную систему счисления:

                  EB16 = 111010112 = 3528

                  Тогда разница между двумя исходными числами равна 1.

       Ответ: 1

 

11. Укажите наименьшее четырёхзначное восьмеричное число, двоичная запись которого содержит 5 единиц. В ответе запишите только само восьмеричное число, основание системы счисления указывать не нужно.

 

       Решение:   Наименьшее двоичное число, содержащее 5 единиц, равно 111112.  Но чтобы восьмеричное число было четырехзначным нужно, чтобы оно состояло из 4 триад (из 12 цифр). При этом первой цифрой двоичного числа обязательно должна быть 1 (два незначащих нуля в начале можно не писать), а остальные единицы будут занимать последние разряды числа. Тогда получаем:

                                        001 000 001 1112 = 10178

        Ответ: 1017 

 

12. Най­ди­те зна­че­ние вы­ра­же­ния 1116 + 118 : 112. Ответ за­пи­ши­те в дво­ич­ной си­сте­ме счис­ле­ния.

 

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

                                             1116 = 16+1 = 17

                                             118 = 8+1 = 9

                                             112 = 2+1 = 3

      Тогда     17 + 9 : 3 = 20

                         20 = 16 + 4 = 24 + 22 = 101002

       Ответ: 10100

 

13.  Даны 4 целых числа, записанные в двоичной системе:

                   10001011, 10111000, 10011011, 10110100.

           Сколько среди них чисел, больших, чем A416+208?

 

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

            100010112 = 2138,  101110002 = 5608, 100110112 = 2338, 101101002 = 2468

            A416 = 101001002 = 2448, и  2448+208=2648.

Тогда из предложенных чисел  подходит только второе число.

       Ответ: 1

 

14. Запись числа 6910  в системе счисления с основанием N оканчивается на 1 и содержит 4 цифры. Чему равно основание этой системы счисления N?

 

      Решение: Для решения этой задачи используем две закономерности.

Во-первых, последней цифрой числа при переводе из одной системы счисления в другую всегда является первый остаток от деления числа на основание системы счисления, куда переводим. Тогда искомое основание N должно быть кратно 68 (69=х*N+1, то х*N=68): 2, 4, 7 и т.д. Во-вторых, по закономерности 4, получаем  N3≤ 69 < N4.

Тогда при  выполнении этих условий искомое число  N будет равно  4.       

      Ответ: 4

 

15. В системе счисления с основанием N запись числа 4110 оканчивается на 2, а запись числа 13110 — на 1. Чему равно число N?

 

      Решение: Т.к. в остатках чисел у нас есть цифры 2 и 1, то N≥3. При этом нужно найти число N, кратное числам 39 и 130. Следовательно, N = 13.

      Ответ: 13

 

16. В какой си­сте­ме счис­ле­ния вы­пол­ня­ет­ся ра­вен­ство 12 · 13 = 211?  В от­ве­те ука­жи­те число – ос­но­ва­ние си­сте­мы счис­ле­ния.

     

     Решение:  При переводе числа 211N в десятичную систему счисления получаем уравнение:

                  211N = 2*N2 + 1*N +1

Для перевода множителей 12 и 13 в десятичную систему счисления вспомним закономерность 1. Тогда 12N = N+2,  13N = N+3.

Следовательно, получаем уравнение:

                (N+2)(N+3) = 2*N2 + N +1

Корнями данного уравнения являются 5 и -1. Но т.к. основание системы счисления является натуральным числом, то N = 5.

      Ответ: 5

 

17. Укажите наименьшее основание системы счисления, в которой запись числа 50 трехзначна.

      Решение:  По закономерности 4 получаем 

                                                                     N2 ≤ 50 < N3.

      Следовательно, нам нужно найти наименьшее число, куб которого больше 50.

      Ответ:  4

 

18. Сколько цифр в восьмеричной записи числа 21023 + 21026?

 

      Решение:  В заданном выражении общая длина результата в двоичной системе счисления будет получена из наибольшего числа 21026  и будет равна 1027 знакам.

Тогда в восьмеричной системе мы получим из нулей 1026 / 3 = 342 знака  плюс одну единицу вначале, итого – 343 знака.

      Ответ:  343.

 

19. Найдите основания систем счисления X и Y, если известно, что  87X=73Y и 62X=52Y. В ответе запишите число, составленное из чисел Y и X, записанных подряд без пробелов. Например, если X=13 и Y=15, ответ запишется как 1513.

 

       Решение: Из первого выражения 87X=73Y  получаем, что Х≥9, Y> X, то Y ≥ 10.  Переводим числа 879 и 73y в десятичную систему счисления и сравниваем их:

                                   879 = 7 + 72 = 79 ≠ 73

Так как 7310  меньше  879, то увеличиваем  Y, получаем 7311 = 3 + 77 = 80;

                                                                                        7312 = 3 + 84 = 87 > 879;

                                   теперь увеличиваем Х , получаем 8710 = 7312.

Тогда Х = 10, Y = 12.

Проверяем второе выражение: 5212  = 2 + 60 = 6210.

       Ответ:  1210.

 

20. Укажите наибольшее четырёхзначное восьмеричное число, четверичная запись которого содержит ровно 2 тройки, нестоящие рядом. В ответе запишите только само восьмеричное число, основание системы счисления указывать не нужно.

 

      Решение:  Наибольшее возможное четырехзначное восьмеричное число –

                  77778 =1111111111112 = 3333334

                  По условию, четверичная запись числа должна содержать ровно 2 тройки, не стоящие рядом. Тогда получаем число 323222= 111011101010= 73528.

      Ответ:  7352.

 

21. Определите количество натуральных чисел, кратных основанию четверичной системы счисления и удовлетворяющих неравенству:  

                                                          7348 ≤ x ≤ 1E416

 

Решение:    Переведем число 1E416 в восьмеричную систему счисления:

                                      1E416 = 1 1110 01002 = 7448

          Тогда

                 7448 – 7348 = 108 = 8 – всего в интервале, включая исходное число.  Тогда чисел, кратных 4, в интервале ровно 2.

       Ответ:  2.

 

22. Определите количество натуральных чисел, удовлетворяющих неравенству:

                                (1708+ FE16 ) ≤ x ≤ (2008 + 111111112)

 

       Решение:  Так как нужно найти натуральные числа, то переведем все числа в десятичную систему счисления и вычислим значения неравенства:

          1708 = 0+56+64=120,     FE16=14+240=254,     2008=64*2=128,    111111112= 255

           120+254=374,   128+255=383

 Тогда ищем натуральные числа  в промежутке 374 ≤ x ≤ 383, всего их 10.

        Ответ:  10.

 

23. Петя и Коля загадывают натуральные числа. Петя загадал число Х, а Коля число У. После того, как Петя прибавил к Колиному числу 9, а Коля к Петиному числу 20, сумма полученных чисел при записи в двоичной системе счисления представляет собой  пять единиц. Чему равна изначальная сумма загаданных мальчиками чисел? Ответ запишите в двоичной системе счисления. Основание указывать не надо.

        Решение:  Сумма полученных чисел составила 111112 = 31. Тогда 31-29 = 2 = 102.

        Ответ:  10.

  

© 2018–2024    Звездина Вера Алексеевна, v_zvezdina@mail.ru

     

SSL