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

 

С вопросами, замечаниями или предложениями по теме обращайтесь ко мне на сайте звездина.рус через форму обратной связи,  в группе сайта Вконтакте или  пишите на электронную почту v_zvezdina@mail.ru.

 

 

 

 

 

 

 

 

 

 

 

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

SSL