Пример перевода десятичного числа 12 в двоичную систему счисления приведен на рис.1.15.
Рис.1.15. Преобразование числа 12 из десятичной системы счисления в двоичную
Дробная часть десятичного числа преобразуется по другому правилу: дробную часть необходимо последовательно умножать на число 2, записывая получаемые в результате умножения целые части, после чего выписать целые части в прямом порядке. Процесс умножения продолжается до тех пор, пока дробная часть не станет равной нулю либо пока не будет достигнута заданная точность.
Пример перевода десятичного числа 0,25 в двоичную систему счисления приведен на рис.1.16.
В результате получаем двоичное число 01, т.е. 0,2510 = 0.012.
2. Преобразование двоичных чисел в десятичные.
Десятичн. число | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
Двоичное число | 0 | 1 | 10 | 11 | 100 | 101 | 110 | 111 |
Шестнадц. число | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
Продолжение таблицы 1.2
8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
8 | 9 | A | B | C | D | E | F |
Часто бывает необходимым преобразовывать шестнадцатеричное число в двоичное и обратно. Для этого достаточно каждую цифру шестнадцатеричного числа записать четырьмя двоичными разрядами – тетрадой. И обратно – в двоичном числе справа налево выделить тетрады и заменить их цифрами шестнадцатеричной системы счисления.
Пример. Преобразовать число 3С12А в двоичную систему и обратно. Записываем каждую цифру четырьмя двоичными разрядами: 0011 1100 0001 0010 1010. Отбрасываем левые незначащие нули и получаем двоичное число 111100000100101010. Обратно: отделяем справа налево по 4 разряда (левые два разряда 11 – неполная тетрада) и заменяем их цифрами шестнадцатеричной системы – 3С12А.
Аналогично выполняется преобразование восьмеричного числа в двоичное и обратно. Разница состоит в том, что вместо тетрады используется триада – по три двоичных разряда на каждую цифру восьмеричного числа.
В настоящее время очень удобно для преобразования чисел из одной системы счисления в другую использовать программу Excel. Для этого достаточно в открывшемся окне соответствующей функции ввести число и получить ответ.
Например, требуется преобразовать десятичное число 38 в двоичное.
Для этого в категории инженерные функции вызываем функцию ДЕС.В.ДВ:
Шаг 1:
Шаг 2:Шаг 3, в соответствующее окно вводим число 38. Если окно разрядность не заполняется, то ПК возвращает необходимое количество разрядов двоичного числа:
Шаг 4, нажать на кнопку ОК и получить результат:
Анологичным образом поступают во всех остальных случаях.
Перечислим функции преобразования чисел из одной системы счисления в другую:
· ДЕС.В.ДВ
· ДВ.В.ДЕС
· ДЕС.В.ВОСЬМ
· ВОСЬМ.В ДЕС
· ДЕС.В .ШЕСТН
· ШЕСТН.В.ДЕС
· ДВ.В.ШЕСТН
· ШЕСТН.В.ВОСЬМ
· ВОСЬМ.В.ШЕСТН.
Арифметические операции – сложение, умножение, вычитание и деление двоичных чисел и ряд других действий выполняет центральный процессор.
Обозначим исходные переменные буквами a, b, результат – буквой y. Каждая из переменных в двоичной системе счисления может принимать только одно из двух возможных значений – 0 или 1. Следовательно, число значений переменной у будет равно 22 = 4. Сложение y=a+b и умножение y=a*b выполняются по правилам, указанным в таблице 1.3.
Как следует из таблицы, правила сложения (кроме последней строки) и умножения совпадают с правилами арифметики.
Таблица 1.3
Сложение | Умножение | ||||
a | b | Y | a | b | y |
0 | 0 | 0 | 0 | 0 | 0 |
0 | 1 | 1 | 0 | 1 | 0 |
1 | 0 | 1 | 1 | 0 | 0 |
1 | 1 | 0 и 1 переноса в левый старший разряд | 1 | 1 | 1 |
Пример 1. Сложить два двоичных числа 1100 и 101. Выполним это действие по правилам арифметики, * *
используя Таблицу 1.3 и складывая 1 1 0 0
цифры поразрядно справа налево. + 1 0 1
Единицы переноса отмечены звез- -----------
дочками. Результат – число 10001, 1 0 0 0 1
равное десятичному числу 17.
Т.о. 11002+1012 = 100012 или в десятичном виде 1210+510 = 1710.
Пример 2. Умножить двоичное число 1100 на двоичное число 101.
Также записываем оба двоичных числа в столбик и по правилам арифметики умножаем множимое (1100) на каждый из разрядов множителя (101), используя таблицу 1.3.
В результате сложения трех 1 1 0 0 промежуточных результатов умножения х 1 0 1
получаем число 111100, что равно 1 1 0 0
десятичному числу 60. + 0 0 0 0
Т.о. операция умножения 1 1 0 0превращается в последовательность 1 1 1 1 0 0
операций сдвига влево и сложения.
В результате получаем 11002 * 1012 = 1111002 или в десятичном формате 1210 * 510 = 6010 .
Сложение двоичных чисел считается самой простой операцией. Две другие арифметические операции над двоичными числами – вычитание и деление являются более сложными, состоят из значительно большего числа простых операций (преобразования, сдвига, сложения) и следовательно требуют большего времени выполнения центральным процессором.