
- •Содержание
- •Введение
- •1 Постановка задачи
- •2 Теоритические предпосылки
- •2.1 Описание систем счисления
- •Непозиционные системы счислений.
- •Позиционные системы счислений.
- •Преобразование чисел. Шестидесятеричная система счисления.
- •Двоичная система счисления.
- •Восьмеричная и шестнадцатеричная системы счислений
- •Перевод из одной системы счисления в другую.
- •2.2 Описание основные тождеств и свойств булевой алгебры
- •2.3 Описание методов минимизации логических функций
- •4) Использование карт Карно
- •2.4 Описание логических элементов
- •2.5 Описание функциональных узлов комбинационного типа
- •Сумматоры
- •2.6 Описание функциональных узлов последовательного типа
- •2.7 Описание цифровых автоматов
- •3 Синтез управляющего автомата
- •3.1 Абстрактный синтез управляющего автомата
- •3.2 Структурный синтез управляющего автомата
- •3.3 Разработка элементной базы управляющего автомата
- •3.4 Расчет конструктивной сложности управляющего автомата
- •4 Разработка принципиальной электрической схемы в среде pSpice
- •4.1 Выбор элементной базы
- •Заключение
- •Список использованных источников
Восьмеричная и шестнадцатеричная системы счислений
Двоичная комбинация |
Значок |
000 |
0 |
001 |
1 |
010 |
2 |
011 |
3 |
100 |
4 |
101 |
5 |
110 |
6 |
111 |
7 |
А
вот таблица для шестнадцатеричных цифр:
Двоичная комбинация |
Значок |
0000 |
0 |
0001 |
1 |
0010 |
2 |
0011 |
3 |
0100 |
4 |
0101 |
5 |
0110 |
6 |
0111 |
7 |
1000 |
8 |
1001 |
9 |
1010 |
A |
1011 |
B |
1100 |
C |
1101 |
D |
1110 |
E |
1111 |
F |
Перевод произвести очень просто, посмотрим на примере числа 10011010010.
Разбиваем его на группы по три цифры: 010 011 010 010. И по таблице переводим: 23228.
Чтобы перевести число в шестнадцатеричное представление разбиваем двоичное число на группы по четыре цифры: 0100 1101 0010. И по таблице переводим: 4D216. С помощью калькулятора Windows мы можем убедиться, что все проделано верно.
В
программистских кругах шестнадцатеричные
числа принято предварять значком 0x
(например, 0x4D2), такое написание пошло
от языка программирования C, либо значком
$ (например, $4D2), такая нотация произошла
от языка программирования Pascal. Иногда
в литературе используют буквы "h"
и "b" для обозначения соответственно
шестнадцатеричных и двоичных чисел
(например, FFh или 1011b).
Перевод из одной системы счисления в другую.
Общий принцип 1: чтобы перевести число в некоторую систему счисления с основанием M ( цифрами 0, ..., M-1 ), иначе говоря, в M-ичную СС, нужно представить его в виде:
C = an * Mn + an-1 * Mn-1 + ... + a1 * M + a0.
a1..n - цифры числа, из соответствующего диапазона. an - первая цифра, a0 - последняя. Сравните эту запись с представлением числа, например, в десятичной системе.
Из системы с большим основанием - в систему с меньшим
Очевидно, чтобы найти такое представление, можно 1. разделить число нацело на M, остаток - a0. 2. взять частное и проделать с ним шаг 1, остаток будет a1... И так, пока частное не равно 0. Искомое число будет записано в новой системе счисления полученными цифрами.
Общий принцип 2: Если основание одной системы - степень другого, например, 2 и 16, то перевод можно делать на основании таблицы: 2 -> 16 : собираем с конца числа четверки ( 16 = 2 4 ) чисел, каждая четверка - одна из цифр в 16-ричной с-ме. Пример ниже. 16 -> 2 - наоборот. Создаем четверки по таблице
Из меньшего основания - к большему:
Просто вычисляем C = an * Mn + an-1 * Mn-1 + ... + a1 * M + a0, где М - старое основание. Вычисления, естественно, идут по в новой системе счисления.
Например: из 2 - в 10: 100101 = 1*25 + 0*24 + 0*23 + 1*22 + 0*21+1=32+4+1=37.
Вообще говоря, можно сделать много хитрых трюков - в примерах реализаций они есть :)
Много вопросов задается относительно дробей и отрицательных чисел.
Отpицательные - модуль числа не меняется при переходе к другой СС, посему: запомнить знак, пpименить стандаpтный метод - поставить знак. Дальше буду говорить уже о положительных числах
Десятичные дроби - пеpеношу запятую, запоминая, на какую степень основания умножил.
Например,
перенос в троичном числе запятой с 4-го
места от конца - то же, что и умножить
его на 34