Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архитектура компьютеров / 1_Системы счисления.doc
Скачиваний:
59
Добавлен:
20.03.2015
Размер:
132.61 Кб
Скачать

Шестнадцатеричная система. В этой системе алфавит включает в себя шестнадцать символов (цифр и букв): 0, 1, …, 9, a,b,c,d,e,f.

Например, число 75(10) = 4161 + В160 = 4В(16)

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

Например, число 15,49(10) = 0001 0101,0100 1001(2-10)

Таким образом, при двоично-десятичном кодировании фактически не производится перевода числа в новую систему счисления, а мы фактически имеем дело с двоично-кодированной десятичной системой счисления .

Преобразование чисел

Компьютер работает с двоичными кодами, Пользователю удобнее иметь дело с десятичными или, по крайней мере, с шестнадцатеричными цифрами. Поэтому возникает необходимость перевода чисел из одной системы счисления в другую. Преобразование числа А из системы счисления с основанием q в систему счисления с основанием p (преобразование A(q) A(p)) осуществляется по правилу замещения ли по правилу деления-умножения на основание системы счисления.

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

Пример 2.1. выполнить преобразование A(2) A(10), если A(2) = 10101,011

A(10) = 124 + 023 + 122 + 021 + 120 + 02-1 + 12-2 + 12-3 =

16 + 4 + 1 + 1/4 + 1/8 = 21,375

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

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

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

Пример 8. Выполнить преобразование A(10) A(16), если A(10) = 351.

351 16

-

336 21 16

-

15 16 1

5

В результате преобразования получаем A(16) = 15F

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

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

Пример 9. Выполнить преобразование A(10) A(16), если A(10) = 0,32.

0, 32

х

16

5, 12

х

16

1, 92

х

16

14, 72

. …

В результате преобразования получаем A(16) = 0,51Е …

Пример 10. Выполнить преобразование A(10) A(8), если A(10) = 134,92

134 8

-

128 16 8

-

6 16 2

0

0, 92

х

8

7, 36

х

8

2, 88

х

8

7, 04

. …

В результате преобразования получаем A(8) = 206,727 …

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

Преобразование чисел из двоичной системы счисления в восьмеричную или шестнадцатеричную и обратно осуществляется по упрощенным правилам с учетом того, что основания этих систем счисления кратны целой степени 2, т. е. 8=23, a 16=24.

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

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

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

Например: 1CD,4(16) = 000111001101,0100(2) = 715,2(8) .

Если при разбиении двоичного кода в крайних триадах (тетрадах) недостает цифр до нужного количества, они дополняются нулями. Соответственно, «лишние» нули слева и справа, не вошедшие в триады (тетрады) отбрасываются.

Самостоятельная работа:

Попробуйте преобразовать число 77.778 → А16 , используя правила «деления» и «умножения», а не упрощенные правила.

Таблицы соответствия двоичных (Bin), восьмеричных (Oct), шестнадцатеричных (Hex) и десятичных (Dec) цифр.

Bin

Oct

Hex

Dec

0000

0

0

0

0001

1

1

1

0010

2

2

2

0011

3

3

3

0100

4

4

4

0101

5

5

5

0110

6

6

6

0111

7

7

7

1000

8

8

1001

9

9

1010

A

10

1011

B

11

1100

C

12

1101

D

13

1110

E

14

1111

F

15

10

Соседние файлы в папке Архитектура компьютеров