на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Представление информации в микропроцессорных средствах. Системы счисления
p align="left">Операции перевода приведены в табл. 1.3.

Таблица 1.3 - Перевод дробного числа

Шаги

Операция умножения

Произведение

Целая часть (цифра)

Разряд

Примечание

1

2*0.34375

0.6875

0

b-1

Старший разряд

2

2*0.6875

1.375

1

b-2

3

2*0.375

0.75

0

b-3

4

2*0.75

1.5

1

b-4

5

2*0.5

1.0

1

b-5

Младший разряд

Ответ: N(2) =0. b-1 b-2 b-3 b-4 b-5 =0. 01011.

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

Естественно, что при этом возникает погрешность перевода чисел. В ЭВМ точность перевода обычно ограничивается длиной разрядной сетки, отведенной для представления чисел.

Для удобства преобразования двоичных чисел в десятичные приведем значения веса некоторых разрядов (позиций) двоичной системы счисления в пределах b15 ... b-6 (см. табл. 1.4).

Таблица 1.4 - Веса разрядов двоичного числа

215

214

213

212

211

210

29

28

27

26

25

32768

16384

8192

4096

2048

1024

512

256

128

64

32

24

23

22

21

20

2-1

2-2

2-3

2-4

2-5

2-6

16

8

4

2

1

0.5

0.25

0.125

0.0625

0.03125

0.015625

Пример 1.3 Перевести двоичное число N(2) =1101. 0101 в десятичное

Как и ранее, ход решения отобразим с помощью табл. 1. 5.

Таблица 1.5 - Перевод дробного числа

Шаги

Двоичное число (код)

Вес двоичного разряда

Промежуточные значения

1

1

0

1

0

1

0

1

1

2-4

0,0625

1*0,0625=0,0625

2

2-3

0,125

0*0,125=0

3

2-2

0,25

1*0,25=0,25

4

2-1

0,5

0*0,5=0

5

20

1,0

1*1,0=1,0

6

21

2,0

0*2,0=0

7

22

4,0

1*4,0=4,0

8

23

8,0

1*8,0=8,0

У(10)=13. 3125

Ответ: десятичный эквивалент равен сумме промежуточных значений N10=13. 3125.

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

Шестнадцатеричные числа. Шестнадцатеричная система счисления (Н-код происходит от hexadecimal), система с основанием 16 использует символы от 0 до F. Такая форма числа удобна для записи, запоминания и ввода с клавиатуры. Компактность достигается путем разделения бит двоичного числа на тетрады (4 бит) и тогда число комбинаций составит 2 =16.

Пример 1.4 Представить двоичное число N2 =110010111010 шестнадцатеричным N16 или NH, где Н указывает на принадлежность системы счисления к шестнадцатеричной.

Решение: надо начать с младшего бита (МБ) и разделить двоичное число на группы из четырех бит. Затем эти группы заменить эквивалентной шестнадцатеричной цифрой. Первая группа 1010=А, вторая - 1011=В, третья - 100=С, следовательно, результат:

1010 1011 1100 =СВА16 или в Н-коде СВАН.

Поскольку обратные преобразования в рассмотренном примере не встречают затруднения, то рассмотрим преобразования чисел из D-кода (десятичного) в Н-код и обратно.

Пример 1.5 Преобразовать десятичное дробное число в Н-код.

Решение представим в двух частях: отдельно для целой части и для дробной.

В первом случае воспользуемся методикой, заложенной в табл. 1.2, проделаем для N =634. 328125 следующие несложные процедуры (рис. 1.2).

мл. разряд

Шаг 1. 634 : 16 = 39, остаток 1010 = А16

Шаг 1. 39 : 16 = 2, остаток 710 = 716

ст. разряд

Шаг 3. 2 : 16, остаток 210 = 216

63410 = 2 7 А16

Рисунок 1.2 - Десятично-шестнадцатеричное преобразование целой части числа

Для преобразования дробной части воспользуемся схемой операций, приведенных в табл. 1.3. А именно, поэтапно (рис. 1.3):

Шаг 1. 16 · 0. 328125 = 5.25 целая часть "5" ст. разряд

Шаг 1. 16 · 0. 25 = 4. 0 целая часть "4" мл. разряд

0,328125 = 0. 5 4

Рисунок 1.3 - Десятично-шестнадцатеричный перевод дробной части числа

Пример 1.6 Обратное преобразование шестнадцатеричного числа в десятичное: N16 =5CBA. 27.

Целая часть числа в табл.1.6 получила свой десятичный эквивалент в виде N10 =23738.

Таблица 1.6 - Преобразование шестнадцатеричного числа в десятичное

Степень позиции

163

162

161

160

Результат

Значение позиции

4096

256

16

1

Н-код

5

С

В

А

4096

256

16

1

*

*

*

*

5

12

11

10

D-код

20480

+

3072

+

176

+

10

= 23 73816

Несколько упростив запись по сравнению с табл. 1.6, дробную часть Н-кода можно вычислить по следующей схеме, помня, что 16=0.0625, а 16?0. 0039:

Н-код 0. 2 7

Вес позиций 16-1 16-2 7·0, 0039 = 0. 0273

2·0, 0625 = 0.1250

сумма дробной части = 0. 152310

Тогда результат определяемого преобразования равен 5CBA.27H=23738.1523D.

В отношении восьмеричных чисел ограничимся лишь замечанием, что они как и шестнадцатеричные, используются для представления двоичных чисел в системе с основанием 8=23 (группа из трех бит). Методика прямых и обратных преобразований остается аналогичной, например, шестнадцатеричной системе.

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

Двоично-десятичные числа. С целью удобства преобразования чистые двоичные числа представляются десятичными либо шестнадцатеричными. Хотя двоично-десятичное преобразование является не простой операцией, в калькуляторах и числовых приборах используют специальный двоично-десятичный код (DDK), когда на доступных пользователю выходах и входах используются десятичные числа. При использовании двоичных чисел для кодирования десятичных данных необходимо иметь возможность представлять цифры от 0 до 9, т.е. для изображения цифры 9 предельно требуется 4 бит для группы 10011. Однако все 4-разрядные двоичные числа, превышающие 10012, недопустимы в DDK. Чтобы освободить пользователя от подобных преобразований, в системной программе ЭВМ предусматривается специальная команда "Десятичная коррекция", обеспечивающая переполнение 4-разрядного регистра при N10=10 путем добавления числа 01102 (+610).

Пример 1.7. Произвести операции преобразования десятичного числа (D-кода) в DDK, а затем записать десятичный эквивалент (обратная задача).

Решение. Пусть имеем дело с десятичным числом 357910. Каждая цифра числа преобразуется прямо в свой двоично-десятичный эквивалент из 4 бит, в результате получаем:

Десятичное число 3 5 7 9

Двоично-десятичное число 0011 0101 0111 1001

Ответ: 357910 =0011 0101 0111 1001(2-10К).

Решим обратную задачу для DDK в виде: 1000 0010 0110 0000.

Решение. Каждая группа из 4 бит прямо переводится в ее десятичный эквивалент:

DDK 1000 0010 0110 0000

D-код 8 2 6 0

Ответ: 1000 0010 0110 0000(2-10К) =8260D.

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

Литература

1. Кибернетика - основа наук - под ред. проф. Карул К.В. - К. - 2009 г.

2. Основы микропроцессорных исчислений - под ред. Мозаев Г.Н. - М. - 2007 г.

Страницы: 1, 2



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.