Урок "Система счисления. Алгоритмы перевода чисел из одной системы счисления в другую"

Разделы: Информатика


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

Требования к знаниям и умениям:

Учащиеся должны знать:

  • основные понятия «нумерации» и «системы счисления»;
  • разницу между цифрой и числом;
  • какая система называется «позиционной» и почему;
  • где применяются различные системы счисления;
  • алгоритмы перевода чисел из одной систем счисления в другую.
  • развернутую форму записи числа в позиционной системе счисления;

Учащиеся должны уметь:

  • приводить примеры различных систем счисления;
  • отличать позиционные и непозиционные системы счисления;
  • записывать числа в развернутой форме;
  • переводить числа из одной системы счисления в другую с использованием соответствующих алгоритмов.

У учеников формируется и развивается:

  • информационная компетентность;
  • компетентность разрешения проблем.

Программно-дидактическое обеспечение урока: компьютерный класс, проектор (желательно) или демонстрационный компьютер для показа презентации; компьютерная презентация по теме «Системы счисления», компьютерный тест «Системы счисления», текстовые документы для самостоятельного изучения материала по теме; текстовый документ (в электронном или печатном виде).

План урока (приложение 1).

Презентация к уроку (приложение 2)

Ход урока

I. Постановка целей урока

  1. В коробке лежит 31 шар. Шары только двух цветов. Среди них 12 красных и 17 желтых. Как такое может быть?
  2. В классе 1111 девочек и 1010 мальчиков. Сколько учеников в классе?
  3. Сколько лет каждому из на в 16-ричной системе счисления?
  4. «10», «100», «101», «110». Такой была шкала оценок в школе в двоичной системе счисления. Как соотнести ее с нашей?

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

II. Повторение закрепление пройденного.

На предыдущем уроке мы говорили, что система счисления - достаточно сложное понятие. Оно включает в себя все законы, по которым числа записываются и читаются, а так же те, по которым производятся операции над ними.

Самое главное, что нужно знать о системе счисления - ее тип: позиционная она или непозиционная. По-другому еще говорят: мультипликативная (позиционная) или аддитивная. Напомню, что в первом типе каждая цифра имеет свое значение, и для прочтения числа нужно сложить все значения использованных цифр:

XXXV = 10+10+10+5 = 35; CCXIX = 100+100+10-1+10 = 219;

Во втором типе каждая цифра может иметь разные значения в зависимости от своего местоположения в числе:

(иероглифы по порядку: 2, 1000, 4, 100, 2, 10, 5)

Здесь дважды использован иероглиф "2", и в каждом случае он принимал разные значения "2000" и "20". 

2 1000 + 4 100+2 10+5 = 2425

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

Вопросы к ученикам:

  1. Чем отличается цифра от числа?
  2. Что такое основание системы счисления?
  3. Кто и когда считал пятерками и дюжинами?
  4. Какие недостатки у непозиционной системы счисления вы можете назвать?
  5. Как записать развернутую форму числа в позиционной системе счисления?
  6. Как перевести числа из разных систем счисления в десятичную?

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

После повторения учащиеся выполняют компьютерный тест по теме «Системы счисления».

III. Изучение нового материала.

Какая из всевозможных систем счисления применяется в компьютерах?

Нам с вами, конечно, наиболее привычна и понятна десятичная система счисления. И может показаться, что ни в каком случае лучше ее нет. Но не надо абсолютизировать роль десятичной системы: для некоторых применений вполне может оказаться гораздо удобнее другая система представления чисел. Это утверждение прекрасно подходит и к способу хранения чисел в ЭВМ. Какую же числовую систему удобно положить в основу компьютера? С точки зрения человека, конечно, лучше всего традиционная десятичная система. Но вот технически реализовать ее на ЭВМ крайне сложно: для хранения десятичной цифры требуется устройство с десятью устойчивыми состояниями! Разработать такую электрическую схему можно, но она будет достаточно сложной и дорогой (не забывайте, что таких элементов потребуется огромное количество!)

Итак, приходится отказаться от "милой сердцу" десятичной системы и использовать другую. Какую? Все остальные человеку одинаково непривычны, поэтому смело можно выбирать наиболее удобный с технической точки зрения вариант. Для инженеров наиболее просто реализовать двоичный элемент: включено/выключено, горит/не горит, проводит/не проводит и т.д. Кроме того, в двоичной системе наиболее просто реализуются все операции: например, двоичная таблица умножения состоит всего из четырех строк:

0 х 0 = 0
0 х 1 = 0
1 х 0 = 0
1 х 1 = 1.

Итак, в ЭВМ используют двоичную систему потому, что она имеет ряд преимуществ перед другими:

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

В двоичной системе счисления всего две цифры, называемые двоичными (binary digits). Сокращение этого наименования привело к появлению термина бит, ставшего названием разряда двоичного числа.

Восьмеричная система счисления. Используется восемь цифр: 0, 1, 2, 3, 4, 5, 6, 7. Употребляется в ЭВМ как вспомогательная для записи информации в сокращенном виде. Для представления одной цифры восьмеричной системы используется три двоичных разряда (триада).

Шестнадцатеричная система счисления. Для изображения чисел употребляются 16 цифр. Первые десять цифр этой системы обозначаются цифрами от 0 до 9, а старшие шесть цифр - латинскими буквами: 10-A, 11-B, 12-C, 13-D, 14-E, 15-F. Шестнадцатеричная система используется для записи информации в сокращенном виде. Для представления одной цифры шестнадцатеричной системы счисления используется четыре двоичных разряда (тетрада).

IV. Закрепление пройденного.

Для закрепления материала предлагается следующие 3 задания.

Первое задание

Вид компетентности: Информационная компетентность

Аспект: планирование и поиск информации

Уровень первый: Из представленной учителем информации выбирает ту, которая необходима для решения поставленной задачи.

Вид компетентности: компетентность разрешения проблем ;

Аспект: действия по решению проблемы;

Второе задание

Вид компетентности: компетентность разрешения проблем;

Аспект: действия по решению проблемы;

Уровень третий: конструирует (создает) алгоритм действий.

Третье задание

Вид компетентности: компетентность разрешения проблем;

Аспект: действия по решению проблемы;

Уровень первый: использует предложенный алгоритм действий.

Уровень третий: применяет им же созданный алгоритм действий.

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

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

Дополнительные задания Д1 и Д2 предназначены для наиболее сильных учеников, которые раньше других справились со всеми тремя заданиями. Результаты - также в электронном виде.

Задание 1. Прочитайте внимательно Текст №1, приведенный ниже, и на его основе:

1.1. Сформулируйте алгоритм перевода чисел из десятичной системы счисления в системы с другим основанием в виде:

Шаг 1

Шаг 2

Шаг 3

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


варианта

Система исходная - десятичная

Результат 1

Результат 2

1

А10=259

А8=

А3=

А10=637

А9=

А2=

А10=586

А16=

А4=

Ответы:


варианта

Система исходная - десятичная

Результат 1

Результат 2

1

А10=259

А8=403

А3=100121

А10=637

А9=787

А2=1001111101

А10=586

А16=24A

А4=21022

 

Текст №1

1. Представим, что у нас есть некоторое десятичное число A, и мы хотим получить его представление в системе по основанию f. Как нам это сделать? Мы знаем, что число A можно представить в виде (anan1...a0)f, будем из этого исходить. Что будет, если мы поделим это число на f ? Получим:

и остаток от деления a0. Почему a0? Все члены суммы делятся на f без остатка, а последний член a0 f0 (или просто а0, поскольку f0=1) в результате деления даёт 0 и a0 в остатке, т.к. максимальное значение цифры всегда меньше основания системы счисления. Итак, мы получили самую правую цифру a0 как остаток от деления и число (anan1...a1)f как результат деления числа A на f. Если мы так будем продолжать делить и дальше, то получим все цифры a1,a2...an.

Возьмём для примера число 25 и получим представление этого числа в двоичной системе счисления:

  • 25 / 2 = 12, остаток 1;
  • 12 / 2 = 6, остаток 0;
  • 6 / 2 = 3, остаток 0;
  • 3 / 2 = 1, остаток 1;
  • 1 / 2 = 0, остаток 1.

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

В результате получим: 110012

Переведем число 20 в двоичную систему. Записать наши действия можно и в такой форме:

Получили: 101002.

Представим число 25 в троичной системе счисления:

  • 25 / 3 = 8, остаток 1;
  • 8 / 3 = 2, остаток 2;
  • 2 / 3 = 0, остаток 2.

Получили число: 2213.

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

  • 25 / 8 = 3, остаток 1;
  • 3 / 8 = 0, остаток 3.

Результат: 318.

Задание 2. Проанализируйте источники, приведенные ниже (Таблица 1. Наиболее важные системы счисления и Текст №2), и на основе их анализа сформулируйте самостоятельно алгоритмы перевода чисел из двоичной в системы счисления с основанием 8, 16 и обратно, а также алгоритмы перевода между восьмеричной и шестнадцатеричной системами.

Представьте пошаговое описание алгоритмов перевода чисел из одной системы счисления в другую в виде:

Система исходная

Система конечная

Пошаговое описание алгоритма

1

двоичная

восьмеричная

Шаг 1
Шаг 2

2

двоичная

шестнадцатеричная

Шаг 1
Шаг 2

3

восьмеричная

двоичная

Шаг 1
Шаг 2

4

шестнадцатеричная

двоичная

Шаг 1
Шаг 2

5

восьмеричная

шестнадцатеричная

Шаг 1
Шаг 2

6

шестнадцатеричная

восьмеричная

Шаг 1
Шаг 2

Ответы:

Перевод чисел из двоичной системы в системы с основанием, равным степеням двойки (8 и 16), и наоборот. Для каждого основания, равного 2n (степеням числа n) на каждую цифру целевой системы приходится ровно n двоичных цифр. Поэтому для того чтобы целое двоичное число записать в системе счисления с основанием 2n, нужно

  • данное двоичное число разбить справа налево на группы по n-цифр в каждой;
  • если в последней левой группе окажется меньше n разрядов, то дополнить ее нулями до нужного числа разрядов;
  • рассмотреть каждую группу, как n-разрядное двоичное число, и заменить ее соответствующей цифрой в системе счисления с основанием 2n.

При переводе чисел из десятичной системы счисления в систему с основанием P > 1 обычно используют следующий алгоритм: если переводится целая часть числа, то она делится на P, после чего запоминается остаток от деления. Полученное частное вновь делится на P, остаток запоминается. Процедура продолжается до тех пор, пока частное не станет равным нулю. Остатки от деления на P выписываются в порядке, обратном их получению.

Текстовые источники к заданию №2:

Таблица 1. Наиболее важные системы счисления.

Двоичная
(Основание 2)

Восьмеричная
(Основание 8)

Десятичная
(Основание 10)

Шестнадцатеричная
(Основание 16)

 

триады

 

тетрады

0
1

0
1
2
3
4
5
6
7

000
001
010
011
100
101
110
111

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

0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

Текст №2

Сравним теперь запись каждого из чисел в двоичной, 8-ричной и 16-ричной системах.

1110001010102=70528=E2A16

1101001011012=64558=D2D16

101012=258=1516

111000110000012=343018=38C116.

Используя данные Таблицы 1 и результаты сравнения, подумайте над вопросом: каким образом установлено это соответствие между двоичными, восьмеричными и шестнадцатеричными числами?

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

Вариант 1

Двоичная

Восьмеричная

Десятичная

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

10101

 

 

 

 

147

 

 

 

 

239

 

 

 

 

Ответ:

Двоичная

Восьмеричная

Десятичная

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

10101

25

21

                   15                 

1100111

147

103

                   67                 

        11101111

357

239

                  EF                 

1011010

132

90

Вариант 2

Двоичная

Восьмеричная

Десятичная

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

101010

 

 

 

 

227

 

 

 

 

169

 

 

 

 

9B

Ответ:

Двоичная

Восьмеричная

Десятичная

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

101010

 52

 42

2A

10010111

227

151

97

10101001

251

169

A9

10011011

233

155

9B

Вариант 3

Двоичная

Восьмеричная

Десятичная

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

11010

 

 

 

 

121

 

 

 

 

269

 

 

 

 

12Е

Ответ:

Двоичная

Восьмеричная

Десятичная

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

11010

32

26

1010001

121

 81

51

100001101

415

269

10D

100101110

456

302

12Е

Дополнительные задания (выполнить тем, кто выполнит задания №1 , №2, №3).

Д1. Сформулируйте в аналогичной форме (как в задании №2) алгоритмы перевода двоичных чисел в 4-ричную, 32-ричную системы.

Д2. Можно ли перевести, пользуясь аналогичными правилами, числа из троичной в девятеричную систему? Если можно, то оформите алгоритм в аналогичной форме. Если для обоснования ответа требуется дополнительная информация, например, таблица, аналогичная Таблице 1, приведите ее. Если аналогичного алгоритма нет, то напишите ответ «нет».

V. Подведение итогов.

Оценка знаний учащихся. Обсуждение изученной темы.

Домашнее задание (3 примера):

Пример 1.

а) Перевести 18110?8

Результат: 18110 = 2658

б) Перевести 62210?16

Результат: 62210 = 26E16

Пример 2.

а) Перевести 1101111001.11012?8

Результат: 15718

б) Перевести 11111111011.1001112?16

Результат: 7FB

Пример 3.

Перевести 1758?16

Результат: 1758 = 7D16.

Ссылки на используемые источники:

  1. http://e97.nm.ru/teor/princip/1_2.html
  2. http://www.dstu.edu.ru/informatics/mtdss/part1.html#pt1
  3. http://www.megalink.ru/~agb/n/numerat.htm
  4. http://www.ctc.msiu.ru/materials/Book1/1_intro/01_inform/060_chisl/01_bin/index.html
  5. http://ru.wikibooks.org/wiki/%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%8B_%D1%81%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F