АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

И шестнадцатеричную

Читайте также:
  1. И шестнадцатеричную и обратно

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

Алгоритм перевода целых десятичных чисел в двоичную систему счисления. Пусть Ацд — целое десятичное число. За­пишем его в виде суммы степеней основания 2 с двоичными коэффициентами. В его записи в развернутой форме будут отсутствовать отрицательные степени основания (числа 2):

Ацд = аn-1•2n-1n-2•2n-2 +... + а1 •21+ а0•20.

На первом шаге разделим число Ацд на основание двоич­ной системы, то есть на 2. Частное от деления будет равно

an-1•2n-2 + аn-2•2n-3 +... + а1, а остаток — равен а0.

На втором шаге целое частное опять разделим на 2, оста­ток от деления будет теперь равен а1

Если продолжать этот процесс деления, то после n-го шага получим последовательность остатков:

а01… аn-1

Легко заметить, что их последовательность совпадает с обратной последовательностью цифр целого двоичного чис­ла, записанного в свернутой форме:

А2 = аn-1...а1а0.

Таким образом, достаточно записать остатки в обратной по­следовательности, чтобы получить искомое двоичное число.

Алгоритм перевода целого десятичного числа в двоичное будет следующим:

Последовательно выполнять деление исходного целого десятичного числа и получаемых целых частных на осно­вание системы (на 2) до тех пор, пока не получится част­ное, меньшее делителя, то есть меньшее 2.

Записать полученные остатки в обратной последователь­ности.

В качестве примера рассмотрим перевод десятичного чис­ла 19 в двоичную систему, записывая результаты в таблицу:

Десятичное число/ целое частное Делитель (основание системы) Остаток Цифры двоичного числа
      a0
      a1
      a2
      a3
      a4

В результате получаем двоичное число:

A2 =a4a3a2a1a0=100112

Алгоритм перевода правильных десятичных дробей в двоичную систему счисления. Пусть Адд — правильная деся­тичная дробь. В ее записи в развернутой форме будут отсут- ствать положительные степени основания (числа 2):

Адд = а-1 • 2-1 + а-2 •2-2 +...

На первом шаге умножим число Aдд на основание двоич­ной системы, то есть на 2. Произведение будет равно:

а-1 + а-2 • 21 +...

Целая часть будет равна а-1

На втором шаге оставшуюся дробную часть опять умно­жим на 2, получим целую часть, равную а-2.

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

Легко заметить, что последовательность полученных чи­сел совпадает с последовательностью цифр дробного двоич­ного числа, записанного в свернутой форме:

А2 =a-1 a-2

Алгоритм перевода правильной десятичной дроби в дво­ичную будет следующим:

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

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

В качестве примера рассмотрим перевод десятичной дроби 0,75 в двоичную систему, записывая результаты в таблицу:

Десятичная дробь/дробная часть произведения Множитель (основание системы) Целая часть произведения Цифры двоичного числа
0,75     a-2
0,50     а-1
0,00      

В результате получаем двоичную дробь: А2 = 0,a-1a-2 = 0,112

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

Рассмотрим алгоритм перевода целых чисел на примере перевода целого десятичного числа А10 = 42410 в шестнадца­теричную систему, то есть из системы счисления с основани­ем р = 10 в систему счисления с основанием q = 16.

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

Десятичное число/ целое частное Делитель (основание системы) Остаток Цифры двоичного числа
      a0
    10 (А) а1
      a2

В результате получаем шестнадцатеричное число:

A16 = a2a1a0 = 1A816

Рассмотрим теперь алгоритм перевода дробных чисел на примере перевода десятичной дроби А10 = 0,625 в восьме­ричную систему, то есть из системы счисления с основанием р = 10 в систему счисления с основанием q = 8.

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

Десятичная дробь/дробная часть произведения Множитель (основание системы) Целая часть произведения Цифры двоичного числа
0,40625     а-1
0,25     a-2
0,00      

В результате получаем восьмеричную дробь: A8 = а-1а -2= 0,328.

Перевод чисел, содержащих и целую и дробную части, производится в два этапа. Отдельно переводится по соответ­ствующему алгоритму целая часть и отдельно — дробная. В итоговой записи полученного числа целая часть от дробной отделяется запятой.


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)