Цель работы: научиться переводить числа из одной системы счисления в другую
Краткие теоретические сведения:
Система счисления– это совокупность правил для обозначения и наименования чисел.
Непозиционной называется такая система счисления, в которой количественный эквивалент каждой цифры не зависит от ее положения (места, позиции) в записи числа.
Основанием системы счисления называется количество знаков или символов, используемых для изображения числа в данной системе счисления.
Наименование системы счисления соответствует ее основанию (например, десятичной называется система счисления так потому, что ее основание равно 10, т.е. используется десять цифр).
Система счисления называется позиционной, если значение цифры зависит от ее места (позиции) в записи числа.
Системы счисления, используемые в компьютерах
Двоичная система счисления. Для записи чисел используются только две цифры – 0 и 1. Выбор двоичной системы объясняется тем, что электронные элементы, из которых строятся ЭВМ, могут находиться только в двух хорошо различимых состояниях. По существу эти элементы представляют собой выключатели. Как известно выключатель либо включен, либо выключен. Третьего не дано. Одно из состояний обозначается цифрой 1, другое – 0. Благодаря таким особенностям двоичная система стала стандартом при построении ЭВМ.
Восьмеричная система счисления. Для записи чисел используется восемь чисел 0,1,2,3,4,5,6,7.
Шестнадцатеричная система счисления. Для записи чисел в шестнадцатеричной системе необходимо располагать шестнадцатью символами, используемыми как цифры. В качестве первых десяти используются те же, что и в десятичной системе. Для обозначения остальных шести цифр (в десятичной они соответствуют числам 10,11,12,13,14,15) используются буквы латинского алфавита – A,B,C,D,E,F.
Таблица перевода натуральных чисел от единицы до шестнадцати в четырех системах счисления:
Таблица №1
10-чная | 2-чная | 8-чная | 16-чная |
А | |||
В | |||
С | |||
D | |||
E | |||
F | |||
Правила перевода из одной системы счисления в другую:
1. Для перевода двоичного числа в десятичное необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 2, и вычислить по правилам десятичной арифметики:
1102 = 1*22 + 1*21 + 0*20=4+2+0=610
2. Для перевода восьмеричного числа в десятичное необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 8, и вычислить по правилам десятичной арифметики:
3718=3*82+7*81*1*80=192+56+1=24910
3. Для перевода шестнадцатеричного числа в десятичное необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 16, и вычислить по правилам десятичной арифметики:
2Е16= 2*16+14*16= 32 +14 = 4610
4. Для перевода десятичного числа в двоичную систему его необходимо последовательно делить на 2 до тех пор, пока не останется остаток, меньший или равный 1. Совокупность остатков от каждого деления, записанная справа налево вместе с последним частным, и образует двоичный аналог десятичного числа.
Пример. Число 2210 перевести в двоичную систему счисления.
2210=101102
5. Для перевода десятичного числа в восьмеричную систему его необходимо последовательно делить на 8 до тех пор, пока не останется остаток, меньший или равный 7. Число в восьмеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.
Пример. Число 57110 перевести в восьмеричную систему счисления.
57110=10738
6. Для перевода десятичного числа в шестнадцатеричную систему его необходимо последовательно делить на 16 до тех пор, пока не останется остаток, меньший или равный 15. Число в шестнадцатеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.
Пример. Число 746710 перевести в шестнадцатеричную систему счисления.
Числа 13 и 11 по таблице перевода (таблица№1) соответственно представляются как D и B.
746710=1D2B16
7. Чтобы перевести число из двоичной системы в восьмеричную, его нужно разбить на триады (тройки цифр), начиная с младшего разряда, в случае необходимости дополнив старшую триаду нулями, и каждую триаду заменить соответствующей восьмеричной цифрой (табл. 1).
Пример. Число 10010112 перевести в восьмеричную систему счисления.
001 001 0112=1138
8. Чтобы перевести число из двоичной системы в шестнадцатеричную, его нужно разбить на тетрады (четверки цифр), начиная с младшего разряда, в случае необходимости дополнив старшую тетраду нулями, и каждую тетраду заменить соответствующей восьмеричной цифрой (табл. 1).
Пример. Число 10111000112 перевести в шестнадцатеричную систему счисления.
0010 1110 00112=2Е16
9. Для перевода восьмеричного числа в двоичное необходимо каждую цифру заменить эквивалентной ей двоичной триадой (не забывая дописывать недостающие нули слева при переводе каждой цифры, чтобы получалась полноценная тройка двоичных цифр)
Пример. Число 5318 перевести в двоичную систему счисления.
5318=101 011 0012
10. Для перевода шестнадцатеричного числа в двоичное необходимо каждую цифру заменить эквивалентной ей двоичной тетрадой (не забывая дописывать недостающие нули слева при переводе каждой цифры, чтобы получалась полноценная четверка двоичных цифр)
Пример. Число D516 перевести в двоичную систему счисления.
D516= 1101 01012
11. При переходе из восьмеричной системы счисления в шестнадцатеричную и обратно, необходим промежуточный перевод чисел в двоичную систему.
Пример 1. Число FEA16 перевести в восьмеричную систему счисления.
FEA16=1111 1110 10102
111 111 101 0102=77528
Пример 2. Число 66358 перевести в шестнадцатеричную систему счисления.
66358=110 110 011 1012
1101 1001 11012=D9D16
12. При переводе дробного числа из любой системы счисления в десятичную следует целую часть числа переводить по обычным правилам, а дробную в следующем порядке: умножить каждую цифру на основание системы счисления в которой находится число и возвести его в степень начиная слева направо со степени -1.
Пример 1. Число 101,112 перевести в десятичную систему счисления.
101,112=1*22+0*21+1*20 , 1*2-1+1*2-2=5,7510
Пример 2. Число 57,248 перевести в десятичную систему счисления.
57,248=5*81+7*80 , 2*8-1+4*8-2 = 47,312510
Пример 3. Число 7А,8416 перевести в десятичную систему счисления.
7А,8416= 7*161+10*160 , 8*16-1+4*16-2 = 122,51562510
13. При переводе дробного числа из восьмеричной и шестнадцатиричной системы счисления в двоичную и обратно надо использовать следующее правило: целую часть переводить обычным способом (п.7,8,9,10), а в дробной части при переводе добавлять недостающие нули до полной тройки или четверки - справа.
Пример 1. 16,248= 001 110, 010 1002
Пример 2. 1110,01012 = 001 110,010 100 =16,248
Пример 3. Е3А,24F16= 1110 0011 1010, 1000 1000 11112
Пример 4. 1111010,01111112= 0111 1010, 0111 1110 = 7А,7Е16
14. Перевод дробного числа из десятичной системы счисления в двоичную осуществляется по следующему алгоритму:
· вначале переводится целая часть десятичной дроби в двоичную систему счисления;
· затем дробная часть десятичной дроби умножается на основание двоичной системы счисления;
· в полученном произведении выделяется целая часть, которая принимается в качестве значения первого после запятой разряда числа в двоичной системе счисления;
· алгоритм завершается, если дробная часть полученного произведения равна нулю или если достигнута требуемая точность вычислений. В противном случае вычисления продолжаются с предыдущего шага.
Пример. Требуется перевести дробное десятичное число 206,11610 в дробное двоичное число.
Перевод целой части дает 20610=110011102 по ранее описанным алгоритмам; дробную часть умножаем на основание 2, занося целые части произведения в разряды после запятой искомого дробного двоичного числа:
.116 • 2 = 0.232
.232 • 2 = 0.464
.464 • 2 = 0.928
.928 • 2 = 1.856
.856 • 2 = 1.712
.712 • 2 = 1.424
.424 • 2 = 0.848
.848 • 2 = 1.696
.696 • 2 = 1.392
.784 • 2 = 0.784
и т.д.
Записываем нули и единицы дробной части числа по порядку начиная слева направо.
Получим: 20610=11001110,00011101102
15. Сложение чисел в двоичной системе счисления производится по следующему алгоритму: 0+0=0 0+1=1 1+0=1 1+1=10
Пример. 10101012+ 1101112
Дописываемые единицы 1 1 1 1 1
Первое слагаемое 1 0 1 0 1 0 1
Второе слагаемое 0 1 1 0 1 1 1
Сумма 1 0 0 0 1 1 0 0
Результат сложения 100011002 (можно проверить переведя все числа в двоичную систему).
16. Умножение чисел в двоичной системе счисления производится по следующему алгоритму: 0*0=0 0*1=0 1*0=0 1*1=1
Пример. 1012*112 (Каждую цифру второго множителя умножаем на каждую цифру первого множителя, результаты произведений складывают между собой по правилам сложения в двоичной системе счисления).
* 1 0 1
1 1
+ 1 0 1
1 0 1
1 1 1 1
Результат: 11112
17. Вычитание чисел в двоичной системе счисления производится по следующему алгоритму: 0-0=0 1-0=1 1-1=0 0-1=-1 (минус обозначает - занять разряд 1)
Пример. 101102-1112
0 1 0 0
1 0 1 1 0
1 1 1
1 1 1 1
Вычитание выполняется так же, как в математике. Если цифра в уменьшаемом меньше цифры вычитаемого, то для данного вычитания необходимо занять разряд (1), т.к. 10-1=1. Если слева от такого вычитания стоит 0, то мы не можем занять разряд. В этом случае разряд занимаем в уменьшаемом у близстоящей слева от данного вычитания единицы. При этом все нули, у которых мы не могли занять разряд, необходимо поменять на единицу, т.к. 0-1=-1. Желательно все изменения в цифрах записывать сверху данного вычитания. Дальнейшее вычитание выполнять с получившимися сверху цифрами.
Задания для самостоятельного решения
Задание 1.Переведите в десятичную систему счисления следующие числа
Таблица №2
№ варианта | двоичная | восьмеричная | шестнадцатиричная |
220,7 | А9Е,1 | ||
11011,01 | 35,6 | 15А | |
40,5 | 2FA | ||
111011.101 | 13,7 | 3C,1 | |
27,31 | 2FВ | ||
101001,11 | 37,4 | 19,А | |
100100,1 | 65,3 | 2F,А | |
43,5 | 1С,4 | ||
101011,01 | 72,2 | АD,3 | |
101101,110 | 30,1 | 38,В | |
101111,101 | 572,5 | DE5,8 | |
1111011,001 | 401,23 | DFA6 | |
111101,10001 | 77,804 | 17BC |
Задание 2.Переведите десятичные числа в заданные системы счисления
Таблица №3
№ варианта | в двоичную | в восьмеричную | в шестнадцатиричную |
Задание 3.Выполните указанные арифметические действия
1 вариант (10101,012 + 8748 - АВ416) * 1110= ?8
2 вариант 456,758 - FC316 + 13410 * 101,1012 = ?10
3 вариант 101111,0112 * 1528 + D57,9516 - 12310=?16
4 вариант E8B,A216 - 1010 * 10111,0012 + 152,88=?2
5 вариант 743,238 + 19410 - 10001,1112 * B6F16=?8
6 вариант (11101,1012 + 3368 - АC916) * 21110= ?8
7 вариант 471,358 - AC916 + 54110 * 1101,1112 = ?10
8 вариант 111101,0112 * 1328 + D5F,A516 - 8810=?16
9 вариант E2C,3A16 + 11010 * 10111,0012 - 152,88=?2
10 вариант 113,238 + 16410 - 11101,1012 * BD416=?8
11 вариант (1111,1012 + 347,58 - А4F16) * 1010= ?8
12 вариант 429,378 - 7FD16 + 4110 * 11101,112 = ?10
13 вариант 11101,012 * 2128 + DAB,A516 - 3410=?16
Содержание отчета:
Отчет должен содержать:
1. Название работы.
2. Цель работы.
3. Задание и его решение.
Контрольные вопросы
1. Что такое система счисления?
2. Что такое основание системы счисления?
3. Что такое непозиционная система счисления?
4. Что такое позиционная система счисления?
5. Из каких знаков состоит алфавит десятичной и двоичной систем?
6. Почему в вычислительной технике взята за основу двоичная система счисления?
7. Правила перевода чисел из 2,8,16-ой системы счисления в десятичную.
8. Правила перевода из 2-ой системы счисления в 8, 10,16-ую.
9. Правила перевода из 10-й системы счисления в 2,8,16-ую.
10. Правила перевода дробного числа из любой системы счисления в десятичную.
11. Правила перевода дробного числа из 8,16-ой системы счисления в двоичную и обратно.
12. Правила перевода дробного числа из 10-ой системы счисления в 2-ую.
13. Сложение, умножение, вычитание чисел в двоичной системе счисления.
Практическая работа №2.