Лабораторная работа - 13
.pdfЛабораторный практикумпо дисциплине «Информатика». Разработчик:АткинаВ.С.
Лабораторная работа №13
Тема: Системы счисления
Цель: освоить системы счисления и получить практические навыки по работе с ними.
I.Теоретическая часть
1.1.Понятие системы счисления
Система счисления – это способ представления чисел и соответствующие ему правила действий над числами.
Система счисления – это знаковая система, в которой числа записываются по определенным правилам с помощью символов некоторого алфавита, называемых цифрами. Системы счисления делятся на две основные группы: позиционные системы счисления и непозиционные.
Система счисления, в которой вес цифры (или символа алфавита) не зависит от ее места в записи числа или слова называется непозиционной.
Примером непозиционной системы счисления является римская система счисления. Примеры чисел в этой системе: III - 3, VI - 6, LXXVI - 76 (где
L=50, X=10, V=5, I=1).
Позиционные системы счисления (СС) – это системы счисления, в
которых количественный эквивалент каждой цифры зависит от ее положения
(позиции) в записи числа. Например:
1)шестидесятиричная (Древний Вавилон) – первая позиционная система счисления. До сих пор при измерении времени используется основание равное 60 (1 мин = 60 с, 1 ч = 60 мин);
2)двенадцатеричная система счисления (широкое распространение получила в XIX в. Число12 – «дюжина»: в сутках две дюжины часов.
Счет не по пальцам. а по суставам пальцев. На каждом пальце руки,
кроме большого, по 3 сустава – всего 12;
Лабораторный практикумпо дисциплине «Информатика». Разработчик:АткинаВ.С.
3) в настоящее время наиболее распространенными позиционными системами счисления являются десятичная, двоичная, восьмеричная и шестнадцатеричная.
Алфавитом системы счисления называется совокупность различных цифр, используемых в позиционной системе счисления для записи чисел.
Например: Алфавиты некоторых позиционных систем счисления.
Двоичная система: {0, 1}
Восьмеричная система: {0, 1, 2, 3, 4, 5, 6, 7}
Десятичная система: {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} ,
где символы А, В, С, D, Е, F имеют десятичные веса 10, 11, 12, 13, 14,
15.
Количество цифр в алфавите равно основанию системы счисления.
Основанием позиционной системы счисления называется количество знаков или символов, используемых для изображения числа в данной системе счисления.
База системы — это последовательность цифр, используемых для записи числа. Ни в одной системе нет цифры, равной основанию системы.
Рассмотрим базисы некоторых позиционных систем счисления.
Десятичная система: 100, 101, 102, 103, 104,…, 10n,…
Двоичная система: 20, 21, 22, 23, 24,…, 2n,…
Восьмеричная система: 80, 81, 82, 83, 84,…, 8n,…
Свернутой формой записи числа называется запись в виде
A=an-1 a n-2…a1a0.a-1…a-m
Именно такая форма записи чисел используется в повседневной жизни. Иначе свернутую форму записи называют естественной или цифровой.
Позиция цифры в числе называется разрядом: разряд возрастает справа налево, от младших к старшим, начиная с нуля.:
Лабораторный практикумпо дисциплине «Информатика». Разработчик:АткинаВ.С.
Все системы счисления строятся по общему принципу: определяется величина р – основание системы, а любое число а записывается в виде комбинации степеней веса р от 0-й до n-й степени при этом любое вещественное число в позиционной системе счисления в развернутой форме может быть представлено в следующем десятичном виде следующим образом:
(а)p = ±(аnpn-1 + а n-1 pn-2 + ... + а2p1 + а1p0 + а-1p-1 + а-mp-m)
Примеры записей чисел в различных системах счисления: 11012 = 1 * 23 + 1 * 22 + 0 * 21 + 1 * 20 = 8 + 4 + 1 = 1310,
1578 = 1 * 82 + 5 * 81 + 7 * 80 = 64 + 40 + 7 = 11110, A6F16 = 10 * 162 + 6 * 161+ 15 * 160 = 26710,
1.2 Переходы между основными системами счисления
Основные СС имеют основания 2, 8,10, 16. Системы с основаниями 2, 8
и 16 являются родственными, так как их основания являются степенями двойки. Переходы между ними реализуются следующим образом.
При переводе из двоичной системы счисления в восьмеричную (2 ® 8).
Двоичное число разбивается справа налево на триады (тройки цифр) и
каждая триада заменяется на 8-ичную цифру.
При переводе из двоичной системы счисления в шестнадцатеричную (2 ® 16). Двоичное число разбивается справа налево на тетрады (четверки цифр) и каждая тетрада заменяется на 16-ичную цифру.
При переводе из восьмеричной системы счисления в шестнадцатеричную (8 ® 16) и из шестнадцатеричной в восьмеричную
(16 ® 8). Преобразование идет через двоичную СС.
Перевод любого основания в десятичную систему счисления осуществляется по определению позиционной системы счисления.
Перевод из десятичной системы в шестнадцатеричную (10 ® 16) может осуществляться двумя типами преобразования:
Лабораторный практикумпо дисциплине «Информатика». Разработчик:АткинаВ.С.
1. Метод деления «уголком» строит результирующее 16-ичное число от младших цифр к старшим. Для этого запоминаются целые остатки от деления исходного числа на 16, пока частное не станет равным 0. Записывая эти остатки в обратном порядке,
получим ответ.
2. Метод «вычерпывания» состоит из нескольких итераций. На каждой итерации исходное число а оценивается снизу максимальной степенью m нового основания p = 16: х ≥ 16m.
Затем определяем число r вхождений степени 16m в число х.
Наконец, 16-ичную цифру r записываем в результирующее число в разряд с номером m. Число а заменяем на меньшее число х – r · 16m. Если новое число а = 0, то алгоритм заканчивается, и
остальные разряды результата заполняем нулями. В противном случае, переходим к следующей итерации.
1.3. Арифметические операции в позиционных системах счисления
Арифметические действия над числами в любой позиционной системе счисления производятся по тем же правилам, что и десятичной системе, так как все они основываются на правилах выполнения действий над соответствующими многочленами. При этом нужно только пользоваться теми таблицами сложения и умножения, которые соответствуют данному основанию P системы счисления.
Для выполнения арифметических операций в системе счисления с основанием P необходимо иметь соответствующие таблицы сложения и умножения. Для P = 2, 8 и 16 таблицы представлены ниже.
Таблица сложения для двоичной системы счисления
+ |
|
0 |
1 |
|
|
|
|
0 |
0 |
|
1 |
|
|
|
|
1 |
1 |
|
10 |
|
|
|
|
Таблица умножения для двоичной системы счисления
Лабораторный практикумпо дисциплине «Информатика». Разработчик:АткинаВ.С.
´ |
0 |
1 |
|
|
|
0 |
0 |
0 |
|
|
|
1 |
0 |
1 |
|
|
|
Таблица сложения для восьмеричной системы счисления
+ |
|
0 |
1 |
|
2 |
3 |
4 |
5 |
6 |
7 |
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
0 |
1 |
|
2 |
|
3 |
4 |
5 |
6 |
7 |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
1 |
2 |
|
3 |
|
4 |
5 |
6 |
7 |
10 |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
2 |
3 |
|
4 |
|
5 |
6 |
7 |
10 |
11 |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
3 |
4 |
|
5 |
|
6 |
7 |
10 |
11 |
12 |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
|
4 |
5 |
|
6 |
|
7 |
10 |
11 |
12 |
13 |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
|
5 |
6 |
|
7 |
|
10 |
11 |
12 |
13 |
14 |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
|
6 |
7 |
|
10 |
11 |
12 |
13 |
14 |
15 |
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
|
7 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Таблица умножения для восьмеричной системы счисления |
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
´ |
|
0 |
|
1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
0 |
|
0 |
|
0 |
|
0 |
|
0 |
|
0 |
|
0 |
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
0 |
|
1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
0 |
|
2 |
|
4 |
|
6 |
|
10 |
|
12 |
|
14 |
|
16 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
|
0 |
|
3 |
|
6 |
|
11 |
|
14 |
|
17 |
|
22 |
|
25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
|
|
0 |
|
4 |
|
10 |
|
14 |
|
20 |
|
24 |
|
30 |
|
34 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
|
|
0 |
|
5 |
|
12 |
|
17 |
|
24 |
|
31 |
|
36 |
|
43 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
|
|
0 |
|
6 |
|
14 |
|
22 |
|
30 |
|
36 |
|
44 |
|
52 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
|
|
0 |
|
7 |
|
16 |
|
25 |
|
34 |
|
43 |
|
52 |
|
61 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Таблица сложения для шестнадцатеричной системы счисления
Лабораторный практикумпо дисциплине «Информатика». Разработчик:АткинаВ.С.
Таблица умножения для шестнадцатеричной системы счисления
Лабораторный практикумпо дисциплине «Информатика». Разработчик:АткинаВ.С.
II. Практическая часть
На языке программирования С# реализуйте программу выполняющую операции над числами в различных системах счисления. Выполните практические задания в соответствии с полученным у преподавателя вариантом.
|
|
III. Варианты |
|
||
|
|
|
|
|
|
Вариант |
Задание |
|
|
|
|
|
|
||||
1 |
Реализуйте программу, определяющую какое число следует за числом |
||||
1114 в 4-ричной системе счисления? |
|
||||
|
Перевести следующие числа в десятичную систему счисления. |
|
|||
|
а) 1001110011(2); б) 1001000(2); в) 1111100111,01(2); г) |
||||
|
1010001100,101101(2); д) 413,41(8); е) 118,8C(16). Сложите |
под |
|||
|
номерами в) |
и г). |
|
|
|
|
|
||||
2 |
счисленияОпределите, какое число предшествует числу 108 в 8-ричной системе |
||||
|
Перевести следующие числа из десятичной системы счисления в |
||||
|
двоичную, восьмеричную и шестнадцатеричную системы счисления. |
||||
|
а) 164(10); б) 255(10); в) 712,25(10); г) 670,25(10); д) 11,89(10). |
|
|||
|
|
||||
3 |
Реализуйте программу, вычисляющую какое из 4-х введенных чисел |
||||
больше: 510 или 58, 11112 или 11118 |
|
||||
|
Сложите |
числа: |
а) |
1100001100(2)+1100011001(2); |
б) |
|
110010001(2)+1001101(2); в) 111111111,001(2)+1111111110,0101(2); г) |
||||
|
1443,1(8)+242,44(8); д) 2B4,C(16)+EA,4(16). |
|
|||
|
|
||||
4 |
Реализуйте программу осуществляющую перевод в десятичную |
||||
систему счисления чисел, записанных в двоичной системе счисления: |
|||||
|
1; 101; 10000; 1000101010; 11001011. |
|
|||
|
Реализуйте программу, реализующую перевод числа из двоичной |
||||
|
формы в двенадцатеричную. |
|
|
||
|
|
||||
5 |
Переведите в двоичную систему счисления десятичные числа: 10; 20; |
||||
100; 200; 1000. |
|
|
|
||
|
Реализуйте программу, реализующую перевод числа из двоичной |
||||
|
формы в семеричную. |
|
|
|
|
|
|
||||
6 |
Переведите десятичные числа: 27; 168; 134; 612 в двоичную и |
||||
восьмеричную системы счисления. |
|
||||
|
|
|
|
|
|
Лабораторный практикумпо дисциплине «Информатика». Разработчик:АткинаВ.С.
|
Реализуйте программу, реализующую перевод числа из двоичной |
|||||
|
формы в троичную. |
|
|
|
|
|
|
|
|||||
7 |
Найдите максимальное и минимальное из чисел: 1324; 1325; 1326; 1327. |
|||||
Предусмотрите вывод последовательности чисел по убыванию. |
|
|||||
|
Реализуйте программу выводящую таблицу умножения для 2, 5, 7 в |
|||||
|
двенадцатеричной системе счисления. |
|
|
|
||
|
|
|||||
8 |
Перевести введенное число из десятичной системы счисления в |
|||||
двоичную, восьмеричную и шестнадцатеричную системы счисления. |
|
|||||
|
Найдите максимальное и минимальное из следующих чисел: 11001, |
|||||
|
1458, 19810, 1AF16. Сложите максимальное и минимальные числа. |
|||||
|
Результат сложения представьте в десятичной форме. |
|
||||
|
|
|||||
9 |
Переведите следующие числа в десятичную систему счисления: а) |
|||||
1100111011(2); |
б) |
10000000111(2); |
в) |
10110101,1(2); |
г) |
|
|
100000110,10101(2); д) 671,24(8); е) 41A,6(16). |
|
|
|||
|
Сложите числа под номером а) и д). Результат представьте |
в |
||||
|
шестнадцатеричной форме |
|
|
|
||
|
|
|||||
10 |
Реализуйте программу осуществляющую перевод введенного числа из |
|||||
двоичной формы в троичною систему счисления. |
|
|
||||
|
Сложите следующие числа: а) 10000011(2)+1000011(2); б) |
|||||
|
1010010000(2)+1101111011(2); в) 110010,101(2)+1011010011,01(2); г) |
|||||
|
356,5(8)+1757,04(8); д) 293,8(16)+3CC,98(16). |
|
|
|
||
11 |
Выполните вычитание: а) 100111001(2)-110110(2); б) 1111001110(2)- |
|||||
111011010(2); в) 1101111011,01(2)-101000010,0111(2); г) 2025,2(8)- |
||||||
|
131,2(8); д) 2D8,4(16)-A3,B(16). |
|
|
|
||
|
Реализуйте программу выводящую таблицу умножения для 2, 3, 7, В, Е |
|||||
|
в шестнадцатеричной системе счисления. |
|
|
|
||
|
|
|||||
12 |
Выполните умножение: а) 1100110(2) и 1011010(2); б) 2001,6(8) и |
|||||
125,2(8); в) 2C,4(16) и 12,98(16). Результаты представьте в десятичной, |
||||||
|
двоичной, восьмеричной и шестнадцатеричной форме. |
|
||||
|
Найдите максимальное |
и минимальное из следующих чисел: 1658, |
||||
|
19810, 1AF16. |
|
|
|
|
|
13 |
Выполните деление: а) 110011000(2) : 10001(2); б) 2410(8) : 27(8); в) |
|||||
D4A(16) : 1B(16). Результаты представьте в десятичной, двоичной, |
||||||
|
восьмеричной и шестнадцатеричной форме. |
|
|
|
||
|
Найдите максимальное из следующих чисел: 657, 199810, 1AF1H20. |
|
||||
|
|
|||||
14 |
Перевести введение число из десятичной системы счисления в |
|||||
двоичную, восьмеричную и шестнадцатеричную системы счисления. |
|
|||||
|
|
|
|
|
|
|
Лабораторный практикумпо дисциплине «Информатика». Разработчик:АткинаВ.С.
Перевести число, введенное в восьмеричной форме в десятичную систему счисления.
IV. Контрольные вопросы
1.Определение системы счисления
2.Виды систем счисления
3.Понятие базиса
4.Позиционные системы счисления
5.Основание системы счисления
6.Формы записи числа
7.Правила перевода в десятичную систему счисления
8.Правила перевода в восьмеричную систему счисления
9.Правила перевода в двоичную систему счисления.
10.Арифметические операции над системами счислений.
V. Правила выполнения.
Отчет по выполненной лабораторной работе оформляется письменно в тетради и должен содержать:
1.Номер лабораторной работы.
2.Тему.
3.Цель.
4.Полные ответы на контрольные вопросы.
5.Отчет с результатами выполненных практических заданий.