Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lektsia_3_Sis_schisl.doc
Скачиваний:
38
Добавлен:
13.02.2016
Размер:
166.91 Кб
Скачать

Пример: число 3 5 6 78 заменить равным ему двоичным числом

3 5 6 7 011 101 110 111 3 5 6 78= 011 101 110 1112

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

0 1 2 3 4 5 6 7

000 001 010 011 100 101 110 111

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

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

(4)

В общем виде задачу перевода числа из системы счисления с основанием q1в систему счисления с основаниемq2 можно представить как задачу определения коэффициентовbi нового ряда, изображающего число в системе с основаниемq2. Решить эту задачу можно подбором коэффициентовbi. Основная трудность при этом заключается в выборе максимальной степени, которая еще содержится в числеAq1. Все действия должны выполняться по правиламqi – арифметики, т.е. по правилам исходной системы счисления.

После нахождения максимальной степени основания проверяют «вхождение» в заданное число всех степеней нового основания, меньших максимального. Каждая из отмеченных степеней может «входить» в ряд не более q2 – 1 раз, так как для любого коэффициента ряда накладывается ограничение:

Пример 1.Перевести двоичное число А2= 1101001 в десятичную систему счисления (q2=10).

16150413020110= 1*26 +1*25 + 0*24 +1*23 +0*22 +0*21 +1*20= 64+32+8+1=10510

Ответ: А10=105

Пример 2.Перевести двоичное число А2= 1100 в десятичную систему счисления (q2=10)

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

1100 = 1*2 3 + 1*22 + 0*21+ 0*2 0 = 8+4 = 12 = 1*101 + 2*100 . Ответ: А10=12

В этом примере числа раскладываются на разряды. Число 1100 состоит из четырех разрядов, которые пронумерованы от нуля до трех, а число 12 – из двух.

Пример 3.Перевести десятичное число А=96 в троичную систему счисления (q2 = 3).

96 = 0*35+ 1*34+ 0*33+ 1*32+ 2*31+ 0*30= 101203. Ответ: А3= 10120.

96 : 3 = 32 (остаток 0)

32 : 3 = 10 (остаток 2)

10 : 3 = 3 (остаток 1)

3 : 3 = 1 (остаток 0)

1 : 3= 0 (остаток 1)

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

Перевод целых чисел делением на основание q2 новой системы счисления.

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

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

Пример 4 .1110­­- ?2

11

2

10

5

2

1

4

2

2

1

2

1

0

Ответ: 1011 2

Пример 5.

4910 - ? 2 49 2

48 24 2

1 24 12 2

0 12 6 2

0 6 3 2

0 2 1

1 Ответ: 110001 2

Пример 6 .12410­­- ?8124 8

8 15 8

44 8 1

40 7

4

Как мы видим, остаток от первого деления равен 4. То есть младший разряд восьмеричного числа содержит цифру 4. Остаток от второго деления равен 7, то есть второй разряд восьмеричного числа – это цифра 7. Старший разряд получислся равным 1. То есть в результате многократного деления мы получили восьмеричное число 1748.

Из восьмеричной системы можно перевести в двоичную делением.

1748= ?2 174 2

16 76 2

14 6 37 2

14 16 2 17 2

0 16 17 16 7 2

0 16 1 6 3 2

1 1 1 1 Ответ: 1111100

Перевод правильных дробей умножением на основание q2 новой системы счисления.

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

Пример 6.Перевести десятичную дробь А = 0,5625 в двоичную систему счисления (q2=2)

0,5625 10 - ? 2 0, 5625*2

1 1250*2

0 2500*2

0 5000*2

1 0000

Ответ: 0,5625 10 – 0,10010 2

Пример 7.Перевести десятичную дробь А = 0,625 в двоичную систему счисления (q2=2)

Решение. 0,625 10 - ? 2 0, 625*2

1 250*2

0 500*2

1 000

0

Ответ: 0,625 10 – 0,1010 2

Пример 8.Перевести двоичную дробь А2= 0,1101 в десятичную систему счисления. Основаниеq2 изображается в двоичной системе эквивалентомq2=10102.

Решение. 0, 1101

1010

b–1=8 1000 0010

1010

b–2=1 1001 0100

1010

b–3=2 0010 1000

1010

b–4=5 0101 0000

Ответ: 0,11012 – 0,8125 10

или 0,1-1 1-2 0-3 1-4= 1*2-1 +1*2-2 + 0*2-3 +1*2-4 = 1/ 21+1/22+0/23+1/24=13/16 = 0,812510

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

Пример 9. Перевести десятичную дробь А = 49,625 в двоичную систему счисления (q2=2)

Решение. Результаты перевода соответственно целой и дробной частей возьмем из примеров 5 и 7.

Ответ: А2= 110001,1010.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]