
- •Тема 2. Вычислительные основы информационных технологий Лекция-4 часа (тезисы) План
- •Понятие кодирования
- •1.2 Позиционные и непозиционные системы счисления
- •1.3 Двоичная, восьмеричная, шестнадцатеричная системы счисления
- •1.4 Перевод чисел из одной системы счисления в другую
- •1.5 Арифметические операции в позиционных системах счисления
- •1.6. Международные системы байтового кодирования
- •Описание логических переменных. Операции над ними
- •Построение таблиц истинности для логических функций
- •Логические функции и их преобразования. Законы логики
- •Построение логических схем
- •Логическая реализация типовых устройств компьютера
1.4 Перевод чисел из одной системы счисления в другую
Алгоритм перевода целого десятичного числа в позиционную систему счисления с другим основанием:
1. Разделить число на основание системы счисления и зафиксировать остаток и частное.
2. Если частное больше или равно основанию системы счисления, то продолжать делить, иначе записать последнее частное и все полученные остатки в обратной последовательности.
Пример 1. Перевести число 11 из десятичной системы счисления в двоичную систему.
Соберем
последнее частное и остатки от деления
в направлении, указанной стрелкой,
начиная с последней единицы и получим
число в двоичной системе счисления:
1110
= 10112
Пример 2. Если десятичное число достаточно большое, то можно применить следующий вид записи:
соберем остатки от деления в направлении, указанной стрелкой, начиная с последней единицы (последнее частное) и получим число в двоичной системе счисления:
36310 = 1011010112
Пример 3. Перевести число 2610 в двоичную, троичную и шестнадцатеричную системы счисления. Записать перевод можно и таким образом:
2610→ ( )2 |
2610→ ( )3 |
2610→ ( )16 |
||||
26:2= |
13+0 |
26:3= |
8+2 |
26:16= |
1+10(А) |
|
13:2= |
6+1 |
8:3 = |
2+2 |
|
|
|
6:2= |
3+0 |
|
|
|
|
|
3:2 = |
1+ 1 |
|
|
|
|
Результат: 2610=110102, 2610=2223, 26=1A16
Для дробных чисел правило последовательного деления заменяется правилом последовательного умножения.
Пример 4.Перевести число 0,37510 в двоичную и шестнадцатеричную системы счисления. Записать перевод можно таким образом:
0,37510 → ( )2 |
0,37510 → ( )16 |
||
0,375∙2= |
0,75 |
0,375∙16= |
6,0 |
0,75∙2= |
1,5 |
|
|
0,5∙2 = |
1,0 |
|
|
Операция умножения продолжается до тех пор, пока дробная часть не окажется равной 0 либо не будет достигнута требуемая точность. Соберем все целые части ( сверху вниз). Результат: 0,37510=0,0112; 0,37510=0,616.
Алгоритм перевода чисел из любой позиционной системы счисления в десятичную систему:
Представление чисел в развернутой форме одновременно является способом перевода чисел в десятичную систему из любой другой позиционной системы счисления. Достаточно подсчитать результат по правилам десятичной арифметики.
Пример 5.Перевести 101,012 → ( )10
Пример 5:Перевести:
10010112 → ( )10
1138 → ( )10
4В16 → ( )10
Можно применить следующий вид записи:
Проще всего осуществляется перевод чисел из двоичной системы в системы с основанием, равным степеням двойки (8 и 16), и наоборот. Для того чтобы целое двоичное число записать в системе счисления с основанием 2n, нужно:
-
данное двоичное число разбить справа налево на группы по n-цифр в каждой;
-
если в последней левой группе окажется меньше n разрядов, то дополнить ее нулями до нужного числа разрядов;
-
рассмотреть каждую группу, как n-разрядное двоичное число, и заменить ее соответствующей цифрой в системе счисления с основанием 2n.
Двоично-шестнадцатеричная таблица
2-ная |
0000 |
0001 |
0010 |
0011 |
0100 |
0101 |
0110 |
0111 |
16-ная |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
2-ная |
1000 |
1001 |
1010 |
1011 |
1100 |
1101 |
1110 |
1111 |
16-ная |
8 |
9 |
A |
B |
C |
D |
E |
F |
Двоично-восьмеричная таблица
2-ная |
000 |
001 |
010 |
011 |
100 |
101 |
110 |
111 |
8-ная |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
Например, надо перевести в восьмеричную и шестнадцатеричную системы счисления число 1011000010,00110012. Для этого разобьем исходное число на группы по 3 цифры (триады), начиная от десятичной запятой, и заменим триады восьмеричными цифрами:
001 011 000 010 , 001 100 100 |
- 2-ичное число; |
1 3 0 2 , 1 4 4 |
- 8-ричное число. |
Разобьем число на группы по 4 цифры (тетрады), начиная от десятичной запятой, и заменим тетрады шестнадцатеричными цифрами:
0010 1100 0010 , 0011 0010 |
- 2-ичное число; |
2 С 2 , 3 2 |
- 16-ричное число. |
Результат: 1011000010,00110012=1302,1448=2C2,3216