Перевод чисел из одной позиционной системы счисления — КиберПедия 

Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Перевод чисел из одной позиционной системы счисления

2017-12-13 822
Перевод чисел из одной позиционной системы счисления 0.00 из 5.00 0 оценок
Заказать работу

В другую

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

Количество различных цифр р, используемых в позиционной системе, определяет название системы счисления и называется основанием p- йсистемы счисления.

Любое число N в позиционной системе счисления с основанием р может быть представлено в виде полинома от основания р:

,

где N – число, цифры числа (коэффициенты при степенях р), р – основание системы счисления > 1).

Числа записывают в виде последовательности цифр:

– точка в последовательности отделяет целую часть числа от дробной (коэффициенты при неотрицательных степенях от коэффициентов при отрицательных степенях). Точка опускается, если число целое (нет отрицательных степеней).

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

В аппаратной основе ЭВМ лежат двухпозиционные элементы, которые могут находиться только в двух состояниях, одно из которых обозначается 0, а другое – 1. Поэтому арифметико-логической основной ЭВМ является двоичная система счисления.

Двоичная система счисления. Используется две цифры: 0 и 1. В двоичной системе любое число может быть представлено в виде , где либо 0, либо 1.

Эта запись соответствует сумме степеней числа 2, взятых с указанными коэффициентами:

.

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

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

Таблица 1

Алфавиты позиционных систем счисления (с.с.)

Двоичная (основание 2) Восьмеричная (основание 8) Десятичная (основание 10) Шестнадцатеричная (основание 16)
  Двоичные триады   Двоичные тетрады

Задание 1

Переведите числа из заданных систем счисления вдесятичную систему.

Методические указания

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

Пример

а) Перевести 10101101,1012 10 с.с.

Ответ: .

б) Перевести 10 с.с.

.

Ответ: .

в) Перевести 10 с.с.

.

Ответ: .

Задание 2

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

Методические указания

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

Примеры.

а) Перевести 8 с.с.

Можно записать:

181: 8 = 22 (остаток 5)

22: 8 = 2 (остаток 6)

2:8 = 0 (остаток 2)

Ответ: .

б) Перевести 16 с.с.

Можно записать:

622:16=38 (остаток )

38:16=2 (остаток 6)

2:16=0 (остаток 2)

Ответ: .

Задание 3

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

Методические указания

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

Примеры

Перевести 8 с.с.

Условно отделим вертикальной чертой целую и дробную части полученных произведений.

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

Ответ: .

Задание 4

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

Методические указания

Для перевода неправильной десятичной дроби в систему счисления с недесятичным основанием необходимо отдельно перевести целую часть и отдельно дробную.

Пример

Перевести 2 с.с.

1. Переведем целую часть:

2. Переведем дробную часть:

Получили ; .

Результат перевода .

Ответ: .

Задание 5

Переведите числа из восьмеричной и шестнадцатеричной систем счисления в двоичную систему.

Методические указания

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

Примеры

а) ;

б)

Задание 6

Переведите числа из восьмеричной и шестнадцатеричной систем счисления в двоичную систему.

Методические указания

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

Примеры

а) Перевести

б) Перевести

Задание 7

Переведите числа из восьмеричной в шестнадцатеричную систему счисления и из шестнадцатеричной в восьмеричную систему счисления.

Методическиеуказания

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

Пример

Перевести

Ответ: .

Задания для самостоятельной работы

Вариант Переведите числа в 10-ю с.с. Переведите десятичные числа в 2-ю, 8-ю, и 16-ю с.с. Восьмеричное число переведите в 16-ю с.с., а шестнадцатеричное – в 8-ю с.с.
1. 10010011111,1012 1372,128 3 CA,7 D 16 286,06 1263,718 2 BA,2 C 16
2. 11100101010,0112 2136,318 1 C 3, A 216 476,91 3472,628 4 CA,2716
3. 11001100111,0112 1742,368 123 E,4 D 16 438,76 1724,318 2 AF,3 C 16
4. 11101011101,10012 1467,638 1 AF,7316 362,87 1273,568 30 A, E 0 F 16
5. 101011010110,0012 1523,248 2 A 7,3 E 16 305,37 1623,728 5 C 2, C 716
6. 11001100011,10012 1273,568 30 A, E 0 F 16 324,93 12372,418 1 D 2,7 D 16
7. 10011010111,0112 1623,728 5 C 2, C 716 457,21 1735,128 5 AD,4 D 16
8. 11000001111,0112 1735,668 23 A, EF 16 343,43 2451,238 2 BA, D 316
9. 10000111111,10012 1327,468 3 CD, BA 16 381,93 1372,128 3 CA,7 D 16
10. 11100001101,0112 1523,748 4 BA,2 F 16 419,96 2136,318 1 C 3, A 216
11. 11011110110,1012 4123,178 1 C 3, A 516 400,01 1742,368 123 E,4 D 16
12. 110010010111,10012 1272,128 3 AD,7 D1 6 153,63 5123,148 1 B 3,4 D 16
13. 11100110101,10112 1071,218 5 DC, F 2 1 6 172,04 1263,718 2 BA,2 C 16
14. 10011010111,0112 2372,128 1 F 2,7 B1 6 191,11 3472,628 4 CA,2716
15. 11110010101,10012 1574,618 35 C, F 116 210,96 1724,318 2 AF,3 C 16
16. 11000011010,10012 6123,518 13 A, C 216 229,74 1272,128 3 AD,7 D1 6
17. 10011000111,11112 5412,638 52 A,1716 248,2 1071,218 5 DC, F 2 1 6
18. 11101101101,10012 5123,148 1 B 3,4 D 16 267,72 2372,128 1 F 2,7 B1 6
19. 11101011001,01012 1263,718 2 BA,2 C 16 571,58 1742,368 123 E,4 D 16
20. 10101110111,01012 3472,628 4 CA,2716 590,72 1467,638 1 AF,7316
21. 10101101111,0112 1724,318 2 AF,3 C 16 495,32 1523,248 2 A 7,3 E 16
22. 11100101101,10112 1275,468 23 A,E 716 552,5 1735,668 23 A, EF 16
23. 10011010111,0112 12372,418 1 D 2,7 D 16 533,51 1327,468 3 CD, BA 16
24. 11011100010,11012 1735,128 5 AD,4 D 16 514,58 1523,748 4 BA,2 F 16
25. 10100101111,1012 2451,238 2 BA, D 316 609,11 4123,178 1 C 3, A 516

Контрольные вопросы

1. Как осуществляется перевод чисел из р-й с.с. в десятичную?

2. Как перевести целое десятичное число в р-ю с.с.?

3. Как перевести правильную десятичную дробь в р-ю с.с.?

4. Как перевести неправильную десятичную дробь в р-ю с.с.?

Лабораторная работа №3

Двоичная арифметика

Цель работы. Научиться выполнять арифметические операции (сложение, вычитание, умножение и деление) с двоичными числами.

Задание 1

Выполните сложение чисел в двоичной системе счисления 100100111,0012 – 100111010,1012

Методические указания

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

Примеры

1) Выполнить сложение двоичных чисел X=1101, Y=111.

В приведенном примере в младшем нулевом разряде две единицы: 1 + 1 = 10 дают нуль в данном разряде и единицу переноса в следующий разряд. В первом разряде: 0+1 + 1 = 10 (крайняя единица перенесена из нулевого разряда) дают 0 и единицу переноса в следующий. Во втором разряде сумма 1 + 1 + 1 = 11 (крайняя единица перенесена из первого разряда) дает 1 и единицу переноса в следующий разряд. В старшем третьем разряде 1 и единица переноса из предыдущего разряда дают 1 + 1 = 10.

Ответ: 1101 + 111 = 10100.

2) Сложить три двоичных числа X=1101, Y=101, Z=111.

Ответ: 1101 + 101 + 111 = 11001.

Задание 2

Выполните вычитание чисел в двоичной системе счисления: 1100110110,00112 – 11111110,012

Методические указания

При вычитании двоичных чисел в данном разряде при необходимости занимается 1 из старшего разряда. Эта занимаемая 1 равна двум единицам данного разряда, так как 10 = 1 + 1.

Примеры

1) Заданы двоичные числа X = 10010 и Y = 101. Вычислите X - У.

Ответ: 100102 – 1012 =11012

Замечание. Число 100…002можно представить в виде суммы

Данное разложение на слагаемые объясняет правило вычитания в столбик. Если вы занимаете 1 из ближайшего старшего разряда, тогда над всеми следующими за единицей нулями следует дописывать 1, а над крайним нулем, для которого произведен заем, 1 + 1 или 10.

2) Выполнить вычитание: 1100000011,0112 – 101010111,12

Ответ: 1100000011,0112 – 101010111,12 =110101011,1112

Задание 3

Выполните умножение чисел и в двоичной системе счисления.

Методические указания

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

Пример

Найти произведение 10012 x 1012.

Ответ: 10012 x 1012=1011012.

Задание 4

Выполните деление чисел и в двоичной системе счисления.

Методические указания

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

Пример.

Найти частное от деления 1100,0112:10,012

Ответ: 1100,0112:10,012 = 101,12.

Задания для самостоятельной работы

Вариант Заданы двоичные числа X и Y. Вычислить X+Y и X-Y, если: Заданы двоичные числа X и Y. Вычислить X*Y и X/Y, если:
1. Х =100101,1012 Y =11101,112 Х =100101,0112 Y =110,12
2. Х =101101,1012 Y =1101,1112 Х =110000,112 Y =110,12
3. Х =110101,1012 Y =11101,112 Х =111001,00012 Y =1010,0112
4. Х =1101111,1012 Y =10101,112 Х =111011,00012 Y =101,012
5. Х =1000111,112 Y =11101,1112 Х =111100,0112 Y =101,112
6. Х =1110001,1012 Y =10011,112 Х =110110,1012 Y =100,112
7. Х =1010001,1012 Y =10011,112 Х =100110,00012 Y =111,012
8. Х =1000011,1012 Y =10011,0112 Х =101011,1112 Y =110,112
9. Х =1101001,1012 Y =10111,112 Х =1010110,1012 Y =1000,012
10. Х =1010001,1012 Y =1111,0112 Х =111111,012 Y =101,12
11. Х =101001,1012 Y =10111,1112 Х =1011010,1012 Y =111,012
12. Х =1010111,1012 Y =11100,1112 Х =1000101,00112 Y =110,112
13. Х =110101,1012 Y =1111,112 Х =100101,0112 Y =110,12
14. Х =101111,1012 Y =1101,1112 Х =100000,11012 Y =101,012
15. Х =110101,0112 Y =10011,112 Х =110111,112 Y =101,112
16. Х =1001011,112 Y =10101,1012 Х =100101,112 Y =111,012
17. Х =100011,0112 Y =10011,1112 Х =100011,012 Y =1011,12
18. Х =1010001,1012 Y =1011,0112 Х =100001,1012 Y =1001,012
19. Х =110001,1012 Y =10111,112 Х =111001,1012 Y =1101,112
20. Х =1000111,0112 Y =11111,112 Х =1010111,0112 Y =111,112
21. Х =111001,1012 Y =1110,1112 Х =11100001,1012 Y =110,112
22. Х =100001,1012 Y =1111,1112 Х =1000001,1012 Y =1111,012
23. Х =1011101,1012 Y =10111,0112 Х =1010101,1012 Y =100,0112
24. Х =1111000,1012 Y =101111,112 Х =1111001,0112 Y =1011,112
25. Х =1100000,1012 Y =1111,1112 Х =1100011,012 Y =11,1112

Контрольные вопросы

1) Каковы правила сложения двоичных чисел?

2) Каковы правила вычитания двоичных чисел?

3) Каковы правила умножения двоичных чисел?

4) Каковы правила вычитания двоичных чисел?

Лабораторная работа №4

Основы машинной арифметики

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

Любые данные (числа, текст, команды программ и др.) в памяти компьютера представлены двоичными кодами, которые представляют собой совокупность битов. В частности, двоичный код, содержащий 8 бит (говорят: «8 разрядов»), называется байтом. Для хранения данных используют следующие форматы двоичного кода: 8-разрядный (байт), 16-разрядный (полуслово), 32-разрядный (слово) и 64-разрядный (двойное слово).

Для выполнения арифметических операций используют специальные коды представления чисел, которые позволяют свести операцию вычитания чисел к арифметическому сложению этих кодов. Различают прямой, обратный и дополнительный коды. Прямой код используется для представления отрицательных чисел в памяти компьютера, а также при выполнении операций умножения и деления. Обратный и дополнительный коды применяются для выполнения операции вычитания, которую заменяют операцией сложения чисел с разными знаками: а - b = а + (-b).

В коде числа каждому разряду соответствует определенный элемент разрядной сетки. Для записи знака числа в разрядной сетке имеется строго определенный фиксированный разряд, обычно это крайний разряд разрядной сетки.

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

Задание 1

Запишите следующие числа в прямом, обратном и дополнительном кодах.

а) 1101011; б) -101011; в) -101101; г) -1100111.

Методические указания

Прямой код целого числа. Под прямым кодом двоичного числа понимают запись самого числа. Значение знакового разряда для положительных чисел определяют равным нулю (0), для отрицательных чисел – единице (1). Например, если для записи кода используется байт, то:

Число Прямой код
+1101 0 0001101
-1101 1 0001101

Крайний левый разряд в прямом коде нами отведен под знак числа, остальные разряды – под само число. Число располагаем в разрядной сетке так, чтобы цифра младшего разряда числа занимала крайнюю правую ячейку.

               

Знаковый

разряд

Обратный код целого числа. Обратный код целого положительного числа совпадает с его прямым кодом. Для отрицательного числа обратный код строится заменой каждого незнакового байта его представления в прямом коде на противоположный (заменим 1 на 0, 0 на 1), знаковый разряд не изменяется.

Пример

Число Прямой код Обратный код Замечание
+11011 0 00011011 0 00011011 Число положительное, обратный и прямой коды совпадают
-11011 1 00011011 1 11100100 Число отрицательное, каждый байт, кроме знакового, изменен на противоположный

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

Пример

Число Прямой код Обратный код Дополнительный код
+1110      
-1110      

Задание 2

Переведите числа X и У в прямой, обратный и дополнительный коды. Выполните сложение в обратном и дополнительном кодах. Результат переведите в прямой код. Полученный результат проверьте, используя правила двоичной арифметики.

а) X= - 11010; Y= 100111;

б) X= - 11101; Y= - 10011;

в) X=111010; Y= - 101111;

г) X= - 101110; Y= - 11101;

д) X=1101011; Y= - 1001110;

е) X= - 11011; Y= - 10111.

Методические указания

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

При сложении чисел в дополнительном коде возникающая единица переноса в знаковом разряде отбрасывается.

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

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

Примеры

Сложить X и Y в обратном и дополнительном кодах:

а) Х = 1111 и Y= -101. Сложим числа, пользуясь правилами двоичной арифметики:

Сложим числа используя коды:

Так как результат сложения является кодом положительного числа (знаку плюс (+) соответствует 0 в знаковом разряде), то:

(X+Y)обр=(X+Y)доп=(X+Y)пр.

б)Х= -101,У= -111.

Сложим числа, пользуясь правилами двоичной арифметики:

Сложим числа используя коды:

Так как сумма является кодом отрицательного числа (знак 1), то необходимо перевести результаты в прямой код:

· из обратного кода:

(X+Y)обр= 1 1110011→ (X+Y)пр= 1 0001100;

· из дополнительного кода:

(X+Y)доп= 1 1110100→ (X+Y)пр= 1 0001011+ 0 0000001= 1 0001100.

Получили Х+ Y = -1100, результат совпадает с суммой, полученной по правилам двоичной арифметики.

Задание 3

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

а) X=1101101; Y=110101;

б) X=111101; Y= - 111001;

в) X= - 111010; Y= - 1100111;

г) X= - 11001; Y= - 100011;

д) X= - 10101; Y=111010;

е) X= - 1101; Y= - 111011.

Методические указания


Поделиться с друзьями:

Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

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

Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.107 с.