- •Кафедра Информационных технологий
- •Основы алгоритмизации
- •Вычислений
- •Информация
- •1.1. Общие сведения об информации.
- •1.2. Энергоинформационная система.
- •1.3. Свойства информации.
- •2. Символизация (кодирование) информации.
- •2.1. Двоичный алфавит.
- •3. Системы счисления.
- •3.1. Десятичная система счисления.
- •3.3. Системы счисления, используемые в вычислительной технике.
- •Двоичная система счисления.
- •3.3.2. Восьмеричная система счисления.
- •3.3.3. Восьмеричная система счисления.
- •3.3.4. Взаимосвязь систем счисления используемых в вычислительной технике.
- •3.4. Перевод из одной системы счисления в другую.
- •3.4.1. Перевод с использованием формулы разложения по степени основания.
- •3.4.2. Перевод целых чисел делением на основание.
- •3.4.3. Поразрядные способы перевода.
- •3.4.4. Представление вещественных чисел в двоичной системе счисления.
- •3.4.4.1.Представление вещественных чисел в двоичной системе счисления с фиксированной запятой.
- •3.4.4.2.Представление вещественных чисел в двоичной системе счисления с плавающей запятой.
- •3.5. Арифметические операции в системах счисления используемых вычислительной техникой.
- •3.5.1. Арифметические операции с целыми числами в двоичной системе счисления.
- •3.5.2. Арифметические операции с целыми числами в восьмеричной и шестнадцатеричной системах счисления.
- •3.5.3. Арифметические операции с вещественными числами в двоичной системе счисления.
- •4. Логические операции.
- •5. Введение в алгоритмизацию.
- •5.1. Понятие алгоритма.
- •5.2. Алгоритмические системы.
- •5.3. Введение в математическое моделирование.
- •5.4. Алгоритмизация.
- •5.4.1. Общая структура алгоритмов
- •5.4.2. Линейная структура алгоритмов
- •5.4.3. Структура развилки
- •5.4.4. Структура цикла
- •5.5. Приближенные вычисления.
- •6. Основы вычислительной техники.
- •6.1. Основы программирования на машинном языке.
- •Литература
3.3.4. Взаимосвязь систем счисления используемых в вычислительной технике.
Двоичная система счисления, используемая элементами вычислительной техники имеет один недостаток – это громоздкость записи. Для того, чтобы записать число 255(10)требуется целых восемь разрядов 11111111(2). Для уменьшения разрядности при записи информации требовалось разработать системы счисления, в которые было бы легко переводить информацию из двоичной системы счисления, и при этом запись была бы менее громоздкой. Сначала была разработана восьмеричная система счисления, в которой тоже самое число 255(10)представлялось в виде 377(8), а затем шестнадцатеричная, это же число в которой имеет видFF(16). Перевод между этими системами счисления можно осуществлять при помощи таблицы 2.
Таблица 2.
Двоичная |
Восьмеричная |
Шестнадцатеричная |
0000 |
0 |
0 |
0001 |
1 |
1 |
0010 |
2 |
2 |
0011 |
3 |
3 |
0100 |
4 |
4 |
0101 |
5 |
5 |
0110 |
6 |
6 |
0111 |
7 |
7 |
1000 |
10 |
8 |
1001 |
11 |
9 |
1010 |
12 |
A |
1011 |
13 |
B |
1100 |
14 |
C |
1101 |
15 |
D |
1110 |
16 |
E |
1111 |
17 |
F |
3.4. Перевод из одной системы счисления в другую.
Существует три способа перевода чисел из одной системы счисления в другую, это:
Перевод с использованием формулы разложения по степени основания;
Перевод целых чисел делением на основание;
Поразрядные способы перевода (переводы с использованием таблиц).
3.4.1. Перевод с использованием формулы разложения по степени основания.
В основе способа перевода лежит использование веса разрядов чисел. Перевод с использованием формулы разложения по степеням основания удобен для перевода в десятичную систему счисления, так как в процессе преобразования действия выполняются в новой системе счисления.
Алгоритм перевода из одной системы счисления в другую представлен на рисунке 7.
Рассмотрим процесс перевода с использованием формулы разложения по степени основания на примерах:
Пример 1.
Дано A(2)=10011. НайтиA(10). Решение примера приведено на рисунке 7.
Пример 2.
Дано A(8)=257. НайтиA(10).
Решение:
A(8)= a2a1a0=a2*82+a1*81+a0*80
A(10)= 2*64+5*8+7*1=128+40+7
A(10)=175
Пример 3.
Дано A(16)=1EF6. НайтиA(10).
Решение:
A(16)= a3a2a1a0= a3*163+a2*162+a1*161+a0*160
A(10)= 1*4096+14*256+15*16+6*1=4096+3584+240+6
A(10)=7926
3.4.2. Перевод целых чисел делением на основание.
Правило заключается в деление числа на основание с остатком, если остаток больше основания то он снова делиться на основание, до тех пор, пока остаток не станет меньше основания.
При этом способе перевода действия выполняются в исходной системе счисления, поэтому это способ удобен для перевода из десятичной системы счисления в остальные системы счисления.
Пример 1.
Дано A(10)=43. НайтиA(2).
Ответ A(2)=101011
Пример 2.
Дано A(10)=132. НайтиA(8).
Ответ A(8)=204
Пример 3.
Дано A(10)=213. НайтиA(16).
Ответ A(16)=D5
3.4.3. Поразрядные способы перевода.
Перевод чисел упрощается, если основание старой системы счисления pи новой системы счисленияqсвязаны отношением:
p=qk илиq=pk,
где:
p– основание исходной системы счисления;
q– основание результирующей системы счисления;
k – целое число.
Для систем счисления используемых в вычислительной технике значениеkприведено в таблице 3.
Таблица 3.
Исходная система счисления |
Результирующая система счисления |
Значение k |
Восьмеричная |
Двоичная |
3 |
Двоичная |
Восьмеричная |
3 |
Шестнадцатеричная |
Двоичная |
4 |
Двоичная |
Шестнадцатеричная |
4 |
При такой связи систем счисление перевод осуществляется с помощью таблиц 4 и 5.
Таблица 4.
Взаимосвязь восьмеричной и двоичной систем счисления.
Двоичная |
Восьмеричная |
000 |
0 |
001 |
1 |
010 |
2 |
011 |
3 |
100 |
4 |
101 |
5 |
110 |
6 |
111 |
7 |
Таблица 5.
Взаимосвязь шестнадцатеричной и двоичной систем счисления.
Шестнадцатеричная |
Восьмеричная |
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 |
Алгоритм поразрядного перевода из двоичной системы счисления в восьмеричную заключается в дроблении двоичного числа по три разряда с права на лево и замене соответствующими цифрами восьмеричной системы счисления из таблицы 4. Если в конце дробления остается меньше трех разрядов, то двоичное число дополняют с лева нулями. Алгоритм перевода представлен на рисунке 8.
Обратный перевод из восьмеричной в двоичную систему счисления осуществляется по этому же алгоритму но в обратном порядке. Один разряд восьмеричной системы счисления заменяется тремя разрядами двоичной систем счисления.
Алгоритм перевода из двоичной в шестнадцатеричную систему счисления аналогичен алгоритму перевода в восьмеричную, за исключением того, что число дробиться не по три, а по четыре разряда и соответствия подбираются из таблицы 5.
Пример 1.
Дано A(2)=1001101. НайтиA(8).
Решение:
Ответ:
A(8)=115
Пример 2.
Дано A(8)=27. НайтиA(2).
Решение:
A(8)=2’7
Ответ:
A(2)=010111=10111
Пример 3.
Дано A(2)=1101101. НайтиA(16).
Решение:
Ответ:
A(16)=6D
Пример 2.
Дано A(16)=F4. НайтиA(2).
Решение:
A(16)=F’4
Ответ:
A(2)=11110100