русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Перевод чисел между системами счисления


Дата добавления: 2015-08-14; просмотров: 5181; Нарушение авторских прав


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

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

3Е,С816 = 3·161+ 14·160+ 12·16-1 + 8·16-2 = 48 + 14 + 0,75 + 0,03125 =

= 62,7812510.

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

Запишем основание новой системы р в десятичной системе счисления. Все последующие действия будем выполнять в десятичной системе.

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

Каждый остаток представим в системе счисления с основанием р как цифру. Запишем цифры остатки в порядке их получения справа налево, от младших разрядов к старшим. Нулевые остатки не отбрасываются, а также записываются.

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

Например, запишем число 284510 в шестнадцатеричной системе счисления.

2845 = 16·177+13(D);

177=16·11+1(1);

11 = 16·0+11(В).

Частное стало равным нулю. Результат получится, если выписать все остатки в порядке, обратном их получению: 284510=B1D16.

Перевод дробных чисел.

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

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



Например, переведем дробь 0,6875 в восьмеричную систему счисления. Получаем:

0,6875·8 = 5,5;

0,5·8 = 4;

Итак, 0,687510=0,548.

Теперь выполним преобразование исходной десятичной дроби в систему счисления с основанием 5.

0,6875·5 = 3,4375;

0,4375·5 = 2,1875;

0,1875·5 = 0,9375;

0,9375·5 = 4,6875;

Дробная часть числа повторилась, а значит, дальше будут получаться те же цифры в такой же последовательности. Итак, 0,687510=0,(3204)5. В скобки заключен период дроби.

Преобразовать периодическую дробь из системы счисления с основанием р в десятичную систему счисления можно так. Сначала преобразуем в десятичную систему число с отброшенной периодической частью. Затем займемся периодом. Если длина периода m цифр и он начинается с позиции k после запятой, то периодическая часть числа записывается в виде обыкновенной дроби, числитель которой совпадает с периодом дроби, а знаменатель равен pk-1(pm - 1).

Например, преобразуем в десятичную систему число 0,2(41)5. Промежуточные вычисления удобно записывать, используя обыкновенные дроби в десятичной системе. В данном случае 0,2 = . Далее, 415=4·5+1 = 2110. По ука­занному выше правилу k = 2 и m = 2, так что знаменатель обыкновенной дроби, соответствующей периодической части заданного числа, равен

52-1(52-1)=120. Таким образом, заданное число равно

+ = + = = 0,57510.

Окончателльно будем иметь: 0,2(41)5 = 0,57510.



<== предыдущая лекция | следующая лекция ==>
Позиционные системы счисления. Перевод чисел из одной системы счисления в другую | Комплексные числа


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.104 сек.