Перевод чисел из шестнадцатеричной системы в десятичную 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Перевод чисел из шестнадцатеричной системы в десятичную



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

Например, требуется перевести шестнадцатеричное число 5A3 в десятичное. В этом числе 3 цифры. В соответствии с вышеуказанным правилом представим его в виде суммы степеней с основанием 16:

5A316 = 3·160+10·161+5·162

 = 3·1+10·16+5·256 = 3+160+1280 = 144310

 

Перевод из десятичной системы счисления в другие

Преобразование десятичных чисел в двоичные

Допустим, нам нужно перевести число 19 в двоичное. Вы можете воспользоваться следующей процедурой:

19 /2 = 9 с остатком 1

9 /2 = 4 c остатком 1

4 /2 = 2 без остатка 0

2 /2 = 1 без остатка 0

1 /2 = 0 с остатком 1

Итак, мы делим каждое частное на 2 и записываем остаток в конец двоичной записи. Продолжаем деление до тех пор, пока в частном не будет 0. Результат записываем справа налево. Т.е. нижнее число будет самым левым и.т.д. В результате получаем число 19 в двоичной записи: 10011.

 

Преобразование десятичных чисел в троичные

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

38: 3 = 12 ост 2

12: 3 = 4 ост 0

4: 3 = 1 ост 1

Итого 38(10) = 1102(3)

 

Преобразование десятичных чисел в восьмеричные

Для перевода чисел из десятичной системы счисления в восьмеричную используют тот же "алгоритм замещения", что и при переводе из десятичной системы счисления в двоичную, только в качестве делителя используют 8, основание восьмеричной системы счисления:

Делим десятичное число А на 8. Частное Q запоминаем для следующего шага, а остаток a записываем как младший бит восьмеричного числа.

Если частное q не равно 0, принимаем его за новое делимое и повторяем процедуру, описанную в шаге 1. Каждый новый остаток записывается в разряды восьмеричного числа в направлении от младшего бита к старшему.

Алгоритм продолжается до тех пор, пока в результате выполнения шагов 1 и 2 не получится частное Q = 0 и остаток a меньше 8.

Например, требуется перевести десятичное число 3336 в восьмеричное. В соответствии с приведенным алгоритмом получим: 333610: 8 = 41710

333610 - 333610 = 0, остаток 0 записываем в МБ восьмеричного числа.

41710: 8 = 5210

41710 - 41610 = 1, остаток 1 записываем в следующий после МБ разряд восьмеричного числа.

5210: 8 = 610

5210 - 4810 = 4, остаток 4 записываем в старший разряд восьмеричного числа.

610: 8 = 010, остаток 0, записываем 6 в самый старший разряд восьмеричного числа.

Таким образом, искомое восьмеричное число равно 64108.

 

Преобразование десятичных чисел в 16-ричную

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

Делим десятичное число А на 16. Частное Q запоминаем для следующего шага, а остаток a записываем как младший бит шестнадцатеричного числа.

Если частное q не равно 0, принимаем его за новое делимое и повторяем процедуру, описанную в шаге 1. Каждый новый остаток записывается в разряды шестнадцатеричного числа в направлении от младшего бита к старшему.

Алгоритм продолжается до тех пор, пока в результате выполнения шагов 1 и 2 не получится частное Q = 0 и остаток a меньше 16.

Например, требуется перевести десятичное число 32767 в шестнадцатеричное. В соответствии с приведенным алгоритмом получим: 3276710: 16 = 204710

3276710 - 3275210 = 15, остаток 15 в виде F записываем в МБ шестнадцатеричного числа.

204710: 16 = 12710

204710 - 203210 = 15, остаток 15 в виде F записываем в следующий после МБ разряд шестнадцатеричного числа.

12710: 16 = 710

12710 - 11210 = 15, остаток 15 в виде F записываем в старший разряд шестнадцатеричного числа.

710: 16 = 010, остаток 7 записываем в старший разряд шестнадцатеричного числа.

Таким образом, искомое шестнадцатеричное число равно 7FFF16.

 

Примеры

 

134 = 100001102

134=112223

134 = 02068

134 = 08616

187 = 1011101122

187=202213

187 = 02738

187 = 0BB16

Вопросы

1. Что такое система счисления?

2. Написать общую формулу счисления.

3. Дать определение аналитическому счислению.

4. Как записываются дробные числа в двоичной системе счисления?

5. Что нужно для перевода восьмеричного числа в двоичное?

6. Преобразование десятичных чисел в двоичные.

7. Преобразование десятичных чисел в 16-ричную.

 

 

ТЕМА 4:

"Арифметические и логические

основы ЭВМ"

 

Содержание:

1. Кодирование чисел

2. Прямой и обратный коды двоичного числа

3. Дополнительный код двоичного числа

4. Логические функции:

4.1 Словесный способ

4.2 Табличный способ

4.3 Числовой способ

4.4 Аналитический способ

4.5 Координатный способ

4.6 Графический способ

5. Вопросы

Кодирование чисел

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

Простейшим машинным кодом является прямой код , получаемый при кодировании в числе X только знаковой информации, причем знак «+» кодируется нулем, а знак «—» - единицей.

Подчеркнем, если под поле цифр разрядов выделено больше, чем это необходимо для представления числа X, то разряды (цифры) числа X заносятся в разрядную сетку ЭВМ в соответствии со своими весами. Код знака числа практически во всех ЭВМ заносится в старший разряд разрядной сетки.

Следовательно, при использовании, например, 8-разрядной сетки числа ; ; .

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

· сравнить знаки слагаемых;

· сравнить слагаемые по модулю при неравенстве их знаков;

· выполнить сложение модулей слагаемых (при равенстве знаков) или вычитание из большего по модулю меньшего слагаемого (при неравенстве знаков);

· присвоить алгебраической сумме знак большего по модулю слагаемого.

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

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

Для рассматриваемых примеров при 6-разрядной сетке ; , а при 8-разрядной сетке: , .

Дополнительный код отрицательного числа образуется из обратного кода путем увеличения на единицу младшего разряда. При 6 - и 8-разрядных сетках дополнительные коды чисел Х1 и Х2 имеют соответственно вид:

и

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

ЭВМ способны обрабатывать как числовую, так и текстовую информацию. Текстовая информация (русские и латинские буквы, знаки препинания и пр.), как и числа, кодируется последовательностью двоичных цифр. При использовании для этих целей 8-разрядных кодов (байтов) можно закодировать 256 различных символов (табл. 1). Такая система кодирования носит название КОИ-7 и принята в большинстве микроЭВМ.

 

Таблица 1 – Кодирование 256 различных символов



Поделиться:


Последнее изменение этой страницы: 2021-12-15; просмотров: 38; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.16.54.63 (0.016 с.)