Примеры решения задач для выполнения задания 1 1. 29610 5 Перевести подбором коэффициентов многочлена. 5 3 125; 5 4 625 . В многочлене максимальная степень 3. 5 53 5 2 51 50 Начальный вид многочлена: 125 2 250; 296 250 46 . Коэффициент при 53 равен 2, остаток 46. 25 2 50; 46 25 21 . Коэффициент при 5 2 равен 1, остаток 21. 5 4 20; 21 20 1 . Коэффициент при 51 равен 4, остаток 1. Коэффициент при 5 0 равен 1, остаток 0. 5 2 53 1 5 2 4 51 1 50 . 5 2141 Конечный вид многочлена: Ответ: 29610 21415 2. 367410 8 Перевести подбором коэффициентов многочлена. 8 3 512; 4 4 4096 . В многочлене максимальная степень 3. 8 83 8 2 81 80 Начальный вид многочлена: 512 7 3584; 3674 3584 90 . Коэффициент при 83 равен 7, остаток 90. 90 64 26 . Коэффициент при 8 2 равен 1, остаток 26. 8 3 24; 26 24 2 . Коэффициент при 81 равен 3, остаток 2. Коэффициент при 8 0 равен 2, остаток 0. 8 7 83 1 8 2 3 81 2 80 . 5 7132 Конечный вид многочлена: Ответ: 367410 7132 8 3. Перевести 9810 2 делением на основание. 98 2 98 49 0 2 48 24 1 24 12 0 2 2 Получаем 2 1100010 2 12 6 2 0 6 3 0 2 1 2 1 4. 124810 3 Перевести делением на основание. 1248 3 1248 416 3 0 414 138 3 Получаем 3 1201020 3 2 138 46 3 0 45 15 3 1 15 5 Ответ: 124810 1201020 3 5. Перевести 1100110111 0012 10 делением на основание. 1 1 0 0 1 1 0 1 1 1 0 0 1 10 1 0 1010 1 0 1 0 0 1 0 0 1 0 10 1 0 1011 1 0 0 0 0 0 1 1010 1010 1010 0010010 1010 110 1011 1010 01100 1010 1000 1010 1100 1010 8 6 Получаем 10 658510 101 5 101 5 Пояснения: Поделили первый раз на 1010 нацело (т.е. делим до тех пор, пока можем делить нацело) – получили частное 1010010010 и остаток 101. Смотрим на полученное частное 1010010010– оно больше 1010, поэтому продолжаем делить дальше, но уже берем это частное и делим его на 1010 также до тех пор, пока можно делить нацело. Получаем частное 1000001 и остаток 1000. Опять смотрим: 1000001 больше 1010, на которое делим, поэтому надо делить дальше. Делим 1000001 на 1010 – получаем частное 110 и остаток 101. Теперь частное 110 меньше 1010, поэтому делить прекращаем. Далее, каждый полученный остаток и последнее частное переводим в 10 с/с и записываем полученные цифры в результат, начиная с последнего частного: 6585 – это и есть ответ. Т.о. Делим на основание новой системы счисления нацело, пока можем, выписывая остатки. 6. 136910 5 Перевести делением на основание. 1369 5 1365 273 5 4 270 54 5 Получаем 5 20434 5 3 50 10 5 4 10 2 0 Ответ: 136910 20434 5 7. 1100101110 112 10 Перевести делением на основание. 110010111011 10 1 0 1010 101000101 10 1 0 1010 100000 1010 1010 11 01100 3 1010 1010 000101 01110 5 1010 1010 10011 10 1010 2 Получаем 10 325910 1001 9 Ответ: 1100101110 112 325910 8. Перевести 0,62510 2 умножением на основание. 0,625 исходное число 2 основание новой с / с, записанное по правилам исходной с / с 1,250 первый остаток 2 0,500 второй остаток 2 1,000 умножение закончено получен нулевой остаток Стрелка показывает направление записи результата перевода. Ответ: 0,62510 0,1012 Умножение на основание происходит по схожим правилам: 1) Берем дробную часть числа и умножаем на основание новой с/с, записанное по правилам исходной с/с. Получаем результат умножения, в котором с конца отсчитываем столько цифр – сколько в исходном числе после запятой (в №4 – 3 цифры после запятой, в №5 – четыре цифры после запятой), ставим запятую после этих цифр и получаем целую часть (до запятой) и дробную (после запятой). Целую часть оставляем пока – по ней будем записывать результат. 2) Если дробная часть вся состоит из нулей, то умножение прекращаем и переходим к записыванию результата (к п.4). 3) Если дробная часть – не нули, то выписываем ее отдельно и опять проводим с ней сеанс умножения на основание новой с/с, записанное по правилам исходной с/с (т.е. переходим к п.1). Делаем умножение столько раз, сколько задано в условии (например – 3 знака после запятой – умножаем 3 раза). 4) Запись результата. В результат записываем «0,», берем первую целую часть (полученную после первого умножения), переводим в конечную с/с и полученную цифру записываем в результат, так поступаем последовательно со всеми полученными целыми частями. 9. Перевести 0,11012 10 умножением на основание. 0,1101 0,0010 1101 0000 0010 0000 1101 1000,0010 0010 001,0100 8 ост. 1 ост. 0,0100 0100 0000 0100 010,1000 2 ост. 0,1000 1010 0000 1010 0000 1010 0000 1010 0000 1000 0000 1000 101,0000 5 ост. По окончании деления целые части произведений переводятся в новую с/с и последовательно выписываются, начиная с первого. Ответ: 0,11012 0,812510 10. 0,110112 10 Перевести умножением на основание. Точность 5 знаков после запятой. 0,11011 0,01110 0,01100 0,11000 1010 00000 1010 00000 1010 00000 1010 00000 11011 00000 01110 00000 01100 00000 11000 00000 11011 1000,01110 01110 100,01100 01100 011,11000 11000 111,10000 8 4 3 7 0,10000 1010 00000 10000 00000 10000 101,00000 5 Ответ: 0,110112 0,8437510 5942,31810 2 11. Перевести делением и умножением на основание. Точность 5 знаков после запятой. Перевод целой части. 5942 2 5942 2971 2 0 2970 1485 2 1 1484 742 2 1 742 371 2 0 370 185 2 1 184 92 2 1 92 46 2 0 46 23 2 0 22 11 2 1 10 5 2 1 4 2 2 1 2 1 0 Получаем для целой части: 1011100110 110 2 Перевод дробной части. 0, 318 0, 636 1, 272 0, 544 1, 088 0, 176 2 2 2 Получаем для дробной части: 0,01010 2 2 2 2 0, 352 Ответ: 5942,31810 1011100110 110,01010 2 12. Перевести 467,325 8 16 Исходная с/с – 8, что соответствует 2 3 , т.е. k=3. Следовательно, цифры исходного числа записываются в двоичной с/с тремя разрядами (триадами). 467,325 8 100 110 111 , 011 010 1012 Новая с/с – 16, что соответствует 2 4 , т.е. k1=4. В записанном двоичном представлении, начиная от запятой выделяется по 4 разряда (тетрада). Если разрядов для выделения не хватает, то они дописываются нулями. Затем каждая тетрада переводится в цифру 16 с/с. Запись подряд полученных цифр является результатом перевода: 137,6 816 0001 0011 0111 , 0110 1010 1000 1 3 7 , 6 8 Ответ: 467,325 8 137,6816 . 13. 6 DFE 216 8 Перевести с использованием промежуточной системы счисления. 6 DFE 216 0110 1101 1111 1110 0010 001 101 101 111 111 100 010 1557742 8 Ответ: 6 DFE 216 1557742 8 14. 3 AB 7916 8 Перевести с использованием промежуточной системы счисления. 3 AB 7916 0011 1010 1011 0111 1001 000 111 010 101 101 111 001 7255718 Ответ: 3 AB 7916 7255718 26104 8 16 15. Перевести с использованием промежуточной системы счисления. 26104 8 010 110 001 000 100 0010 1100 0100 0100 2C 4416 Ответ: 26104 8 2C 4416 Примеры решения задач для выполнения алгебраического сложения Сложение с фиксированной запятой 1. Выполнить алгебр. сложение чисел в обратном коде, при решении использовать модифицированные коды, разрядная сетка 9 бит. 110011 101101 11.0110011 11.0101101 числа в разрядной сетке в прямом коде 11.1001100 11.1010010 числа в обратном коде 11.1001100 11.0011110 1 учет переноса из старшего разряда 11.1010010 11.0011111 11.1100000 результат отрицательный в о.к. результат в п.к. Ответ: -1100000. 2. Выполнить алгебр. сложение чисел в дополнительном коде, при решении использовать модифицированные коды, разрядная сетка 10 бит. 101010 110001 11.00101010 00.00110001 числа в разрядной сетке в прямом коде 11.11010101 инверсия 1 11.11010110 образование дополнительного кода 11.11010110 00.00110001 1 00.00000111 число положительное д.к. о.к. Ответ: +111. Сложение с плавающей запятой 3. Выполнить сложение чисел, представленных в формате с плавающей запятой 0,111111 2 7 0,10101 2 4 ; в обратном коде, m=8 разрядов, p=4 разряда. m 00,101010 m 11,111111 Запись мантисс в п.к. m 00,101010 m о.к. 11,000000 Запись мантисс в о.к. p 0,100 p 0,111 ; ∆p=3, p p Проверка и выравнивание порядков Порядок у числа A меньше, следовательно требуется выполнить сдвиг мантиссы на ∆p разрядов вправо, т.е. выполнить увеличение порядка: m о.к. 00,000101 , p 0,111 Сложение мантисс и проверка на нарушение нормализации результата 11,000000 00,000101 11,000101 нарушения нормализац ии нет 11,111010 m п.к. 11,111010 p 0,111 Ответ: 0,111010 2 7 4. Выполнить сложение чисел, представленных в формате с плавающей запятой 0,110101 2 2 ; 0,1110 2 0 в дополнительном коде, m=8 разрядов, p=4 разряда. m 00,110101 m 11,111000 Запись мантисс в п.к. m д.к. 00,110101 m д.к. 11,001000 Запись мантисс в д.к. p 0,000 ; ∆p=2, p p p 1,010 Проверка и выравнивание порядков Порядок у числа A меньше, следовательно требуется выполнить сдвиг мантиссы на ∆p разрядов вправо, т.е. выполнить увеличение порядка: m д.к. 00,001101 , p 0,000 Сложение мантисс и проверка на нарушение нормализации результата 11,001000 00,001101 11,010101 нарушения нормализац ии нет 11,101011 п.к. m п.к. 11,101011 p 0,000 Ответ: 0,101011 2 0 Примеры сложения с плавающей запятой, где наблюдается нарушение нормализации Примеры: Выполнить сложение чисел, представленных в формате с плавающей запятой 0,1000 2 3 ; 0,1011 2 3 1. в дополнительном коде, m=6 разрядов, p=4 разряда. m 00,1000 m 11,1011 Запись мантисс в п.к. p 1,011 p 1,011 ; ∆p=0, p p Проверка и выравнивание порядков m д.к. 00,1000 m д.к. 11,0101 Запись мантисс в д.к. Сложение мантисс и проверка на нарушение нормализации результата 00,1000 11,0101 11,1101 нарушение нормализац ии справа сдвиг на 2 разряда влево (до первого нуля ) в д.к. при сдвиге влево на свободное место вдвигаются нули (см. таблицу ) 11,0100 m m порядок уменьшается на сдвинутое количество разрядов p 1,101 д.к . 11,1011 p 1,101 п.к . 11,1100 p 1,101 Ответ: 0,1100 2 5 2. 0,111110 2 5 ; 0,110111 2 5 m=8 разрядов, p=4 разряда. Запись мантисс в п.к. m 00,111110 m 00,110111 p 0,101 p 0,101 ; ∆p=0, p p Проверка и выравнивание порядков Сложение мантисс и проверка на нарушение нормализации результата 00,111110 00,110111 01,110101 нарушение нормализац ии слева, результат 1 сдвиг на 1 разряда вправо (до получения числа 2 1 ) в п.к. при сдвиге вправо на свободное место вдвигаются нули (см. таблицу ) 00,111010 m п.к . порядок увеличивае тся на сдвинутое количество разрядов p 0,110 00,111010 p 0,110 Ответ: 0,111010 2 6 3. 0,101 2 5 0,1001 2 3 ; в обратном коде, m=8 разрядов, p=4 разряда. m 00,101000 m 11,100100 Запись мантисс в п.к. m о.к. 00,101000 m о.к. 11,011011 Запись мантисс в о.к. p 0,011 p 0,101 ; ∆p=2, p p Проверка и выравнивание порядков Порядок числа А меньше, следовательно требуется выполнить сдвиг мантиссы на ∆p разрядов вправо, т.е. выполнить увеличение порядка: m о.к. 11,110110 , p 0,101 Сложение мантисс и проверка на нарушение нормализации результата 11,110110 00,101000 00,011110 1 00,011111 00,111110 m п.к . нарушение нормализац ии справа сдвиг на 1 разряд влево (до первой 1) в п.к. при сдвиге влево на свободное место вдвигаются 0 (см. таблицу ) порядок уменьшается на сдвинутое количество разрядов p 0,100 00,111110 Ответ: 0,111110 2 4 p 0,100 Примеры решения задач с использованием кода прямого замещения (2/10 кода) Двоично-десятичные коды Числа в кодах такого типа представляются двоичными тетрадами соответствующих десятичных цифр. Двоично-десятичный код (2/10) – код прямого замещения; код 8421 10 код 2/10 код 0 0000 1 0001 2 0010 3 0011 4 0100 10 код 5 6 7 8 9 2/10 код 0101 0110 0111 1000 1001 10 код Остальные комбинации 10 10 – 15 11 запрещенные 12 13 15 2/10 код 1010 1011 1100 1101 1110 10 код 15 2/10 код 1111 Преобразование числа в обратный код 1. Запись отрицательного числа в прямом коде 2. Добавление тетрады + 0110 во все тетрады числа из п.1 - Сложение 3. Инверсия полученной в п.2. суммы - Это и есть результат – число в обратном коде. Преобразование числа в дополнительный код 1. Выполнить операции 1-3 из преобразования в обратный код 2. В младшую тетраду добавить + 0001 - Результат сложения – число в дополнительном коде. При преобразовании в обратный или дополнительный код результат не корректируется. Преобразование в прямой код из обратного или дополнительного кода происходит аналогично. Правила выполнения арифметических операций Коррекция результата потетрадного сложения путем добавления поправки + 0110 требуется в случае, если : 1. Был перенос в старшую тетраду 2. Возникают запрещенные комбинации При коррекции разрешен межтетрадный перенос. Например: 279 + 581 = 860 Сначала выполняется сумма, а потом, если требуется – коррекция 0. 0010 0111 1001 0. 0101 1000 0001 0. 0111 1111 1010 0110 0110 внесение корр. из за запрещ. комб. 0. 1000 0110 0000 результат 860 пример, где требуется коррекция при возникновении переноса и запрещенных комбинаций одновременно. 689+579=1268 0. 0110 0. 0. 0101 0111 1001 1100 0000 0010 0110 0110 0110 внесение корр. из за запрещ. комб и переноса 0. 0001 0010 1000 0110 1001 1000 результат 1268 1. Используя код прямого замещения (двоично-десятичный код) выполнить алгебр. сложение в обратном коде 1239 934 1. 0001 0010 0011 1001 ; 0. 0000 1001 0011 0100 п.к. Перевод в обратный код 1. 0001 0010 0011 1001 прямой код числа 0110 0110 0110 0110 поправка 1. 0111 1000 1001 1111 далее инверсия 1. 1000 0111 0110 0000 результат в обратном коде Сложение 0. 0000 1001 0011 0100 1. 1000 0111 0110 0000 1. 1001 0000 1001 0100 0110 поправка 1. 1001 0110 1001 0100 результат в о.к. Перевод в прямой код 1. 1001 0110 1001 0100 результат в о.к. 0110 0110 0110 0110 поправка 1. 1111 1100 1111 1010 1. 0000 0011 0000 0101 прямой код числа 0 3 0 5 Стрелка показывает наличие межтетрадного переноса. 2. Используя код прямого замещения (двоично-десятичный код) выполнить алгебр. сложение в дополнительном коде 9588 29 1. 1001 0101 1000 1000 ; 0. 0000 0000 0010 1001 п.к. Перевод в дополнител ьный код 1. 1001 0101 1000 1000 прямой код числа 0110 0110 0110 0110 поправка 1. 1111 1011 1110 1110 1. 0110 0110 1000 1111 1. 0000 0100 0001 0001 инверсия 0001 1. 0000 0100 0001 0010 1. 0000 0000 0010 1001 прямой код числа 0110 0110 0110 0110 поправка результат в д. к. 1. 1001 1001 0111 0000 инверсия 0001 1. 1001 1001 0111 0001 Сложение 1. 0000 0100 0001 0010 1. 1001 1001 0111 0001 0. 1001 1101 1000 0011 3 тетрада запр. комб. 0110 0. 1010 0011 1000 поправка 0011 4 тетрада запр. комб. поправка 0110 1. 0000 0011 1000 Перевод в прямой код 0011 результат в д. к. 0011 результат в д.к. 0110 0110 0110 0110 1. 0110 1001 1110 1001 поправка 1. 1001 0110 инверсия 1. 0000 0011 1000 0001 0110 0001 1. 1001 0110 9 6 0001 0111 прямой код числа 1 7 результат в д. к.