
- •Лекции по курсу «микропроцессорая техника»
- •Арифметические основы вычислительной техники
- •Позиционные системы счисления
- •Двоичная система счисления
- •Алгоритмы преобразования десятичных чисел в двоичные
- •Метод вычитания
- •Метод деления
- •Метод умножения
- •Восьмеричная и шестнадцатеричная системы счисления
- •Представление чисел в различных системах счисления
- •Представление отрицательных чисел
- •Сложение и вычитание двоичных чисел
- •Правила сложения двоичных чисел
- •Архитектура эвм
- •Обобщенная структура эвм
- •Основные характеристики эвм
- •Классификация эвм
- •Уровни организации эвм
- •Машинный уровень организации
- •Форматы команд
- •Адресация данных
- •Прямые способы адресации
- •Непрямые способы адресации
- •Адресация команд
- •Типы машинных команд
- •Команды передачи данных
- •Команды обработки данных
- •Микропрограммный уровень организации эвм
- •Принцип микропрограммного управления
- •Набор микроопераций и микроэлементов
- •Системный уровень организации эвм
- •Программный режим работы
- •Организация прерывания процессора
Метод умножения
умножить исходную дробь на 2 и записать целую часть полученного произведения в старший разряд (справа от запятой) искомой двоичной дроби;
дробную часть произведения, полученного на предыдущем шаге, умножить на 2 и записать целую часть результата в следующий разряд (справа от предыдущего) искомой двоичной дроби;
операции, описанные в п. 2, продолжать до тех пор, пока или результат умножения не будет точно равен 1, или не будет получено требуемое количество разрядов искомой двоичной дроби.
Рис.1.3. Перевод десятичной дроби в двоичную методом умножения
Восьмеричная и шестнадцатеричная системы счисления
Недостатком двоичной системы счисления является очень громоздкая запись больших чисел. Для того, чтобы сделать запись двоичных чисел более компактной, в вычислительной технике используют восьмеричную и шестнадцатеричную системы счисления.
В восьмеричной системе счисления для записи чисел применяются цифры 0, 1, 2, 3, 4, 5, 6, 7, а в шестнадцатеричной системе –0, 1, 2, 3, 4, 5, 6, 7, 8, 9,A,B,C,D,E,F. Шестнадцатеричные числаA,B,C,D,E,Fэквивалентны десятичным числам 10, 11, 12, 13, 14, 15, соответственно.
Для того, чтобы представить двоичное число в восьмеричной форме, исходное число разбивают на группы по 3 разряда в каждой вправо и влево, начиная от запятой (рис.1.4, А). Неполные группы дополняют незначащими нулями. Затем каждое трехзначное двоичное число заменяют эквивалентной восьмеричной цифрой. Обратное преобразование осуществляется путем замены каждого разряда восьмеричного числа эквивалентным трехразрядным двоичным числом.
Рис. 1.4. Пример преобразования двоичного числа в восьмеричное (А) и шестнадцатеричное (В)
Перевод чисел из двоичной системы счисления в шестнадцатеричную производится аналогично переводу из двоичной системы в восьмеричную. Различие состоит в том, что исходное двоичное число разбивается на группы по 4 разряда, а не по 3 (см. рис. 1.4, В).
В табл.1.1 приведены десятичные числа от 0 до 16 и их эквиваленты в двоичной, восьмеричной и шестнадцатеричной системах счисления.
Таблица 1.1
Представление чисел в различных системах счисления
Система счисления | |||
dec |
bin |
oct |
hex |
0 |
0000 |
00 |
0 |
1 |
0001 |
01 |
1 |
2 |
0010 |
02 |
2 |
3 |
0011 |
03 |
3 |
4 |
0100 |
04 |
4 |
5 |
0101 |
05 |
5 |
6 |
0110 |
06 |
6 |
7 |
0111 |
07 |
7 |
8 |
1000 |
10 |
8 |
9 |
1001 |
11 |
9 |
10 |
1010 |
12 |
A |
11 |
1011 |
13 |
B |
12 |
1100 |
14 |
C |
13 |
1101 |
15 |
D |
14 |
1110 |
16 |
E |
15 |
1111 |
17 |
F |
Представление отрицательных чисел
Для представления отрицательных чисел в двоичной системе счисления используются прямой, обратный или дополнительный коды, в каждом из которых старший разряд несет информацию о знаке числа (sign bit). Если значение знакового разряда равно 1, то число отрицательное, если 0–положительное.
Прямой код(direct code)–двоичный код, в котором знак числа и его модуль кодируются независимо, например:
+5 (dec) = 00000101 (bin),
-5 (dec) = 10000101 (bin).
Обратный код(inverse code) положительного числа совпадает с прямым кодом. Обратный код отрицательного числа образуется в результате поразрядной инверсии прямого кода, за исключением знакового разряда, например:
+5 (dec) = 00000101 (bin),
-5 (dec) = 11111010 (bin).
Число “нуль” в обратном коде имеет два представления:
+0 (dec) = 00000000 (bin).
-0 (dec) = 11111111 (bin).
Дополнительный код(two’s complement) неотрицательного числа совпадает с прямым кодом. Дополнительный код отрицательного числа образуется в результате прибавления единицы к обратному коду, например:
+5 (dec) = 00000101 (bin),
-5 (dec) = 11111011 (bin).
По сравнению с обратным кодом, дополнительный код имеет следующие преимущества:
однозначное представление нуля,
более удобная реализация операции сложения чисел.