Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Эквиваленты десятичных чисел в различных системах счисления.



Читайте также:
  1. X. Прочитайте и переведите предложения, обращая внимание на употребление инфинитива в различных функциях.
  2. Абсолютна чисельність населення та його склад
  3. Активный и пассивный типы адаптации и их влияние на скорость развития различных Рас
  4. Алгебра и теория чисел
  5. Анализ различных форм обучения
  6. Анализ различных форм финансирования
  7. АНАЛИЗ ЧУВСТВИТЕЛЬНОСТИ ПРОЕКТА ПРИ РАЗЛИЧНЫХ ОБЪЕМАХ РЕАЛИЗАЦИИ УСЛУГ

Таблица 1

Десятичное число Р =10 Двоичное число Р =2 Восьмеричное число Р =8 Шестнадцатеричное число Р =16
       
       
       
       
       
       
       
       
       
       
      A
      B
      C
      D
      E
      F
       

 

Системы счисления, применяемые в ЭВМ, можно разделить на основную и вспомогательные.

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

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

При этом можно использовать хорошо разработанный аппарат двоичной логики.

Операции сложения, вычитания и умножения двоичных чисел представлены в таблице 2.

 

 

Таблица 2

Двоичные операции
0+0=0 0-0=0 0*0=0
0+1=1 1-0=1 0*1=0
1+0=1 1-1=0 1*0=0
1+1=10 10-1=1 1*1=1
1+1+1=11    

 

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

ПРИМЕР 1

Сложить два десятичных числа 15(10) и 17(10) в двоичной системе счисления:

Десятичное число 15(10) в двоичной системе счисления будет 1111(2), а десятичное число 17(10)=10001(2)

Сложение, как в десятичной системе счисления, выполним столбиком:

1111 15(10)

+

10001 17(10)

-----------

100000 32(10)

 

Сложение осуществляется следующим образом:

Сначала складываем две цифры младших разрядов 1+1

Результат равен 10 (2) В младшем разряде пишем 0, а 1 переносим во второй разряд. К имеющейся там 1 прибавляем перенесённую:

1+1 = 10, во втором разряде записываем 0, а 1 переносим в следующий старший (третий) разряд и т.д.

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

1*2^5+0*2^4+0*2^3+0*2^2+0*2^1+0*2^0=32(10)

Умножение двоичных чисел производится в соответствии с таблицей 2.

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

Пример 2: Получить произведение чисел Х1=10110(2) и Х2=1011(2) в двоичной системе счисления.

Решение: 10110

Х

1011

+ 10110

10110

 

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

Вспомним, как мы делим одно число на другое в десятичной системе исчисления. Я имеется в виду деление столбиком или углом. Точно так же происходит деление в двоичной системе. Вот пример деления двух двоичных чисел:

 

Сначала мы записываем делимое. В данном случае это число 1000001 (в десятичном виде 65). Затем, справа от него, рисуем угол. В верхней части угла записываем делитель. В нашем случае – это 101 (десятичное 5). Затем мы начинаем находить частное по разрядно. В десятичной системе исчисления в данном случае мы подбираем, на какое число от 1 до 9 нужно умножить делитель, для того, что бы результат был бы все же меньше, чем три первые разряда делимого. Если такого числа не находится, то берут первые четыре разряда делимого. В двоичной системе исчисления любой разряд может принимать только два значения – ноль или единица. Поэтому выбор у нас гораздо меньший. Делитель можно умножать только на 1 либо на ноль. При этом в первом случае он останется неизменным, а во втором он будет равен нулю. Нам придется лишь проверять не больше ли делитель, чем число, составляющее первые три разряда делимого. Как видим первые три разряда составляют число 100, что меньше, чем 101. Поэтому берем первые четыре разряда делимого. Число, составляющее первые четыре разряда делимого (1000) естественно больше делителя. Поэтому мы записываем делитель под первыми четырьмя разрядами делимого и вычитаем эти два числа. Получаем разность 11. В первый разряд частного записываем 1.

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

 

Далее ищем третий разряд частного. Сносим еще один ноль с очередного разряда делимого. Но из числа 10 невозможно вычесть 101. 10 меньше, чем 101. Поэтому записываем в очередной разряд частного ноль и сносим последний разряд делимого. Теперь вычитание возможно. Более того, результат вычитания равен нулю. Это означает во первых, что последний разряд частного равен единице, а во вторых то, что число 1000001 поделилось на 101 без остатка. Результат деления равен 1101 (десятичное 13).

 

 

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

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

Шестнадцатеричные цифры имеют 16 значений: от 0 до15; они записываются цифрами от 0 до 9, затем идёт буква А(обозначает число 10), буква В (обозначает11), и далее от С до F(со значениями от 12 до 15). Десятичные эквиваленты чисел представлены в таблице 1. Каждая шестнадцатеричная цифра соответствует комбинации четырёх двоичных, т.е. 4 битам (16=2^4). Любую шестнадцатеричную цифру можно записать с помощью двоичной тетрады: 1(16)=0001, 2(16)=0010, 3(16)=0011, …А(16)=1010….. F(16)= 1111

Если для записи программы применяется восьмеричная система, использующая для записи числа цифры от 0 до 7, каждой цифре соответствует 3 бита (8=2^3).

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

(неправильных дробей).

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

Рассмотрим порядок перевода целых десятичных чисел из одной системы счисления в другую:

1. Разделить данное число на основание новой системы счисления. Остаток от деления даёт младший разряд числа в новой системе счисления;

2. Если частное от деления больше или равно основанию системы счисления, продолжить деление в соответствии с пунктом 1. Второй остаток даёт второй разряд числа и т.д.

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

ПРИМЕР 3:

Перевести число 49(10) в двоичную систему счисления.

49:2=24 1 в остатке; эту 1 пишем в младший разряд.

24:2=12 0 в остатке, пишем его во второй разряд.

12:2=6 0 в остатке, пишем его в третий разряд.

6:2=3 0 в остатке, пишем его в четвёртый разряд.

3:2=1 и 1 в остатке, пишем эту единицу в пятый разряд и частное от деления(3:2=1) пишем в шестой, старший разряд.

ОТВЕТ: 49(10)=110001(2)

ПРИМЕР 4: Перевести число 1237(10) в шестнадцатеричную систему.

Решение:

Частное остаток

1237:16= 77 5 остаток 5 запишем в младший разряд;

77:16= 4 13 остаток 13 (в шестнадцатеричной системе счисления это D пишем во второй разряд, а частное 4 (77:16=4) пишем в старший разряд.

ОТВЕТ: 1237(10)=4D5(16)

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

Зависимость между числами шестнадцатеричной системы счисления и эквивалентными им двоичными тетрадами представлены в таблице 1. Рассмотрим перевод числа этим способом.

ПРИМЕР 5:

Перевести число 4D5(16) в двоичную систему счисления.

РЕШЕНИЕ: записываем каждую шестнадцатеричную цифру двоичными тетрадами, сохраняя при этом последовательность цифр шестнадцатеричного числа.

4D5

0100 1101 0101

ОТВЕТ: 4D5(16)=010011010101(2)

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

ПРИМЕР 6: перевести двоичное число 1011101110(2) в шестнадцатеричную систему счисления.

РЕШЕНИЕ: разобьём двоичное число на тетрады:

10 1110 1110 Неполную тетраду 10 дополни до четырёх знаков нулями (получим 0010). Таким образом, получим

0010 1110 1110 четырёхбитовые группы, тетрады. Из таблицы 1 знаем их шестнадцатеричные эквиваленты. Получим 2 Е Е

ОТВЕТ: 1011101110(2)=2ЕЕ(16)

Для перевода правильных дробей из системы счисления с основанием р1 в систему с основанием р2 используется метод, базирующийся на умножении переводимой правильной дроби на основание р2 новой системы счисления.

Рекомендуется следующая последовательность операций:

1. Умножить число на основание новой системы счисления;

2. В полученном произведении выделить целую часть. Она даст старший разряд дробной части нового искомого числа;

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

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

ПРИМЕР 7: Перевести число Х=0,2(10) в двоичную систему счисления с точностью до четырёх разрядов после запятой.

РЕШЕНИЕ:

Целая часть Старший разряд

0,2*2= 0, 4 0 0

0,4*2= 0,8 0, следующий разряд 0

0,8*2= 1,6 1, следующий разряд 1

0,6*2= 1,2 1, следующий разряд 1

ОТВЕТ: 0,2(10) = 0, 0011(2)

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

ПРИМЕР 8: перевести десятичное число Х=49,2(10) в двоичную систему счисления с точностью до четырёх разрядов после запятой.

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

ОТВЕТ: Х=49,2(10) = 110001,0011(2)

 

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

 

 


Дата добавления: 2015-07-10; просмотров: 308 | Нарушение авторских прав






mybiblioteka.su - 2015-2024 год. (0.019 сек.)