Metodichka_2_-_PF_Informatika
.pdfФедеральное агентство по рыболовству Федеральное государственное образовательное учреждение
высшего профессионального образования «Астраханский государственный технический университет»
Образовательная деятельность в сфере высшего и дополнительного профессионального образования сертифицирована DQS по ISO 9001
Кафедра «Информатика»
МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ И ПРАКТИЧЕСКИЕ ЗАДАНИЯ
по курсу «Информатика»
для студентов подготовительного факультета ФГБОУ ВПО «АГТУ»
Тема:
Системы счисления. Перевод чисел из одной системы счисления в другую. Арифметические операции в позиционных системах счисления.
Астрахань 2012 г.
2
Системы счисления
Естественная форма представления чисел используется для хранения в памяти и обработки процессором целых чисел с фиксированной запятой. Каждому разряду ячейки памяти соответствует всегда один и тот же разряд числа. Запятая находится справа от меньшего разряда (вне разрядной сетке).
Для хранения и представления:
1.целых неотрицательных чисел используется 1 ячейка памяти = 8 бит,
2.целых чисел со знаком используется 2 ячейки = 16 бит,
3.больших целых чисел используется 4ячейки = 32 бит,
4.отрицательных чисел используется дополнительный код. Дополнительный код отрицательного числа A, хранящегося в n-ячейках 2n- |A|.
Экспоненциальная форма представления чисел обычно используется для записи очень больших или очень малых чисел, код в естественной форме содержат большое количество незначащих нулей (1 000 000 = 1·106). Вещественные числа (конечные и бесконечные десятичные дроби) записываются в формате с плавающей
запятой, т.е. положение запятой в числе может меняться. Формат чисел с плавающей запятой: A =m · qn
m – мантисса числа, q – основание системы счисления, n – порядок числа
Пример:
Естественная форма |
|
Экспоненциальная форма |
|
|
|
|
|
десятичная система счисления |
|
|
|
16000000000000000 = 1,6 |
·10 16 |
0,00000000000000016 = 1,6 |
·10 -16 |
двоичная система счисления |
|
|
|
11000000000000000 = 1,1 |
·2 16 |
0,00000000000000011 = 1,1 |
·2 -16 |
Диапазон изменения чисел определяется количеством разрядов, отведенный для хранения порядка числа, точность определяется количеством разрядов, отведенных для хранения мантиссы.
Арифметические операции чисел в формате с плавающей запятой:
При сложении и вычитании сначала производится выравнивание порядков (до большего), а затем производится операция сложения или вычитания мантисс.
При умножении порядки складываются, а мантиссы перемножаются.
При делении – их порядка делимого вычитается порядок делителя, мантисса делимого делится на мантиссу делителя.
Для записи информации о количестве объектов используются числа. Числа записываются с использованием особых знаковых систем, которые называются системами счисления. Алфавит систем счисления состоит из символов, которые называют цифрами.
Вбольшинстве систем счисления вес цифры (или символа алфавита) зависит от ее места в записи числа или слова такая система счисления называется позиционной; в противном случае система называется непозиционной.
Непозиционная система – древняя римская система записи чисел с алфавитом вида Х={I (1), V (5), Х (10), L (50), С (100), D (500), М (1000)}, где в скобках указаны веса символов (не зависящие от позиции символа).
Значение цифр не зависит от её положения в числе (XX). Величина числа в римской системе счисления определяется как сумма или разность цифр в числе (например, I (1) и V (5)). Если меньшая цифра стоит слева от большей цифры, то она вычитается (например, IV (4)), если справа – прибавляется (например, VI (6)).
Впозиционных системах счисления количественное значение каждой цифры числа зависит от позиции, которую она занимает в числе.
Каждая позиционная система счисления имеет определенный алфавит знаков, основание и базис.
Впозиционных системах счисления основание системы равно количеству цифр (знаков в ее алфавите) и определяет, во сколько раз различаются значения одинаковых цифр, стоящих в соседних позициях числа.
Базис позиционной системы счисления – это последовательность чисел, каждое из которых определяет
количественный вес символа в зависимости от его места в записи числа. Базис произвольной системы счисления обозначается: …, q -2, q-1, q0, q1, q2,…
Система счисления |
Основание |
Алфавит |
Базис |
Двоичная |
2 |
0, 1 |
2-2, 2-1, 20, 21, 22 |
Восьмеричная |
8 |
0, 1, 2, 3, 4, 5, 6, 7 |
8-2, 8-1, 80, 81, 82 |
Десятичная |
10 |
0,1,2,3,4,5,6,7,8,9 |
10-2, 10-1, 100, 101, 102 |
|
|
0,1,2,3,4,5,6,7,8,9 |
16-2, 16-1, 160, 161, 162 |
Шестнадцатеричная |
16 |
A(10), B(11), C(12), D(13), |
|
|
|
E(14), F(15) |
|
Целые числа в системе счисления с любым основанием (2, 10, 16) всегда представляются точно. Любое целое число представляется в виде суммы степеней числа, лежащего в основании системы счисления с
3
соответствующими коэффициентами – от 0 до 9 в десятичной, 0 и 1 в двоичной, от 0 до F (15) в шестнадцатеричной системах. Для определенности остановимся на двоичном представлении.
Двоичное кодирование – кодирование информации, при котором используются два символа 1 и 0.
1.Для перевода двоичного числа в десятичное число необходимо его записать в виде многочлена,
состоящего из произведений цифр числа и основания системы счисления в степени соответствующей разряду цифры числа, и вычислить по правилам десятичной арифметики:
2.Для перевода двоичного числа в восьмеричное число, его нужно разбить на триады (тройки цифр),
начиная, справа налево, в случае необходимости дополнив старшую триаду нулями, и каждую триаду заменить соответствующей восьмеричной цифрой.
Число 10010112 перевести в восьмеричную систему счисления. Разбиение на триады: 001 001 0112
0012=1*20=1
0012=1*20=1
0112=1*21+1*20=3
001 001 0112=1138
3.Для перевода двоичного числа в шестнадцатеричное число, его нужно разбить на тетрады (четверки цифр), начиная с младшего разряда, в случае необходимости дополнив старшую тетраду нулями, и каждую тетраду заменить соответствующей восьмеричной цифрой.
4.Для перевода восьмеричного числа в двоичное число необходимо каждую цифру заменить эквивалентной ей двоичной триадой.
5.Для перевода восьмеричного числа в десятичное число необходимо его записать в виде многочлена,
состоящего из произведений цифр числа и соответствующей степени числа 8, и вычислить по правилам десятичной арифметики:
6.Для перевода восьмеричного числа в шестнадцатеричное число и обратно, необходим промежуточный перевод чисел в двоичную систему.
7.Перевод десятичного числа в двоичное число осуществляется по алгоритму: целое десятичное число делится нацело на основание 2, затем на 2 делятся последовательно все частные от целочисленного деления, до тех пор пока частное не станет меньше основания. В результат заносится последнее частное и все остатки от деления, начиная с последнего 2210=101102
Рисунок 6. Перевод числа в двоичную систему
8.Для перевода десятичного числа в восьмеричное число его необходимо последовательно делить на 8 до тех пор, пока не останется остаток, меньший или равный 7. Число в восьмеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке 57110=10738.
4
Рисунок 7. Перевод числа в восьмеричную систему
9.Для перевода десятичного числа в шестнадцатеричное число, необходимо последовательно делить на
16, основание шестнадцатеричной системы счисления. Например, требуется перевести десятичное число 3276710 в шестнадцатеричное число. Число в шестнадцатеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке. Остаток 15 записывается в виде F в шестнадцатеричной системе. Остаток 7 записываем в старший разряд шестнадцатеричного числа. Таким образом, искомое шестнадцатеричное число равно 3276710 = 7FFF16
Рисунок 8. Перевод числа в шестнадцатеричную систему
10.Для перевода шестнадцатеричного числа в двоичное число необходимо каждую цифру заменить эквивалентной ей двоичной тетрадой.
11.Для перевода шестнадцатеричного числа в восьмеричное число вначале шестнадцатеричное число переводят в двоичное, затем разбивают его на триады, начиная с младшего бита, а потом заменяют триады соответствующими им эквивалентами в восьмеричной системе (аналогично алгоритму, описанному в разделе Перевод чисел из двоичной системы в восьмеричную и шестнадцатеричную. Для рассмотренных выше примеров имеем:
1F16 = 111112 = 011 1112 = 378
F116 = 111100012 = 011 110 0012 = 3618
12. Для перевода шестнадцатеричного числа в десятичное число необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 16, и вычислить по правилам десятичной арифметики:
Для перевода числа из одной системы счисления в другую есть ещё более простой и менее трудоёмкий способ: использование компьютера. Пуск – Все программы – Стандартные – Калькулятор – ( Вид) – (Инженерный).
Различные коды двоичной системы счисления
В ЭВМ применяется прямой, обратный и дополнительный (в некоторой литературе можно встретить обратный дополнительный) коды.
Прямой код используется для представления отрицательных чисел в запоминающем устройстве ЭВМ, а также при умножении и делении. Обратный и дополнительный коды используются для замены операции вычитания операцией сложения, что упрощает устройство арифметического блока ЭВМ.
К кодам выдвигаются следующие требования:
1.Разряды числа в коде жестко привязаны к определенной разрядной сетке.
2.Для записи кода знака в разрядной сетке отводится фиксированный, строго определенный разряд. Например, если за основу представления кода взят один байт, то для представления числа будет отведено 7
разрядов, а для записи кода знака один разряд.
Прямой код.
Прямой код числа в двоичной системе счисления совпадает по изображению с записью самого числа в двоичной системе счисления. Значение знакового разряда для положительных чисел равно 0, для отрицательных чисел - 1. Знаковым разрядом обычно является крайний разряд в разрядной сетке.
Пример:
Если для записи кода выделен один байт, то для числа +1101 прямой код 0|0001101, для числа -1101
прямой код 1|0001101.
Обратный код.
Обратный код для положительного числа в двоичной системе счисления совпадает с прямым кодом.
Для отрицательного числа все цифры числа заменяются на противоположные (1 на 0, 0 на 1), а в знаковый разряд заносится единица.
Пример:
Для числа +1101: прямой код 0|0001101, обратный код 0|0001101 Для числа -1101: прямой код 1|0001101, обратный код 1|1110010
Дополнительный код.
Дополнительный код положительного числа в двоичной системе счисления совпадает с прямым кодом. Для отрицательного числа дополнительный код образуется путем получения обратного кода и
добавлением к младшему разряду единицы.
Пример:
5
Для числа +1101: Прямой код 0|0001101, Обратный код 0|0001101 Дополнительный код 0|0001101 Для числа -1101: Прямой код 1|0001101, Обратный код 1|1110010 Дополнительный код 1|1110011
Практическая работа «Перевод чисел из одной системы счисления в другую»
Задание №1. Переведите число из 2 системы счисления в другие. Заполнить пропуски числами. Двоичная Восьмеричная Десятичная Шестнадцатеричная
10101
11100
10101110
11100110
1010111001
Задание №2. Переведите число из 8 системы счисления в другие. Заполнить пропуски числами. Двоичная Восьмеричная Десятичная Шестнадцатеричная
7
6
15
32
357
Задание №3. Переведите число из 10 системы счисления в другие. Заполнить пропуски числами. Двоичная Восьмеричная Десятичная Шестнадцатеричная
9
8
15
24
120
Задание №4. Переведите число из 16 системы счисления в другие. Заполнить пропуски числами.
Двоичная |
Восьмеричная |
Десятичная |
Шестнадцатеричная |
|
|
|
А |
|
|
|
9 |
|
|
|
1А |
|
|
|
9D |
|
|
|
1F2 |
|
|
|
3B1 |
Арифметические операции в позиционных системах счисления
Арифметические операции во всех позиционных системах счисления выполняются по одним и тем же хорошо известным правилам, основным отличаем, является перенос числа из разряда в разряд.
|
Общие правила сложения: |
|
|
|
|
|
||||
|
|
|
|
|
|
0 |
+ |
0 |
= |
0 |
|
|
|
|
|
|
0 |
+ |
X |
= |
X |
|
Общие правила вычитания: |
|
|
|
|
|
||||
|
|
|
|
0 – 0 = 0 |
X – 0 = 1 |
X – X = 0 |
||||
|
Сложение в двоичной системе счисления: |
|
|
|
|
|||||
|
|
|
|
|
|
1 |
+ |
1 |
= 10 |
|
|
Пример №1: |
|
|
|
|
|
|
|
||
|
1 |
0 |
1 |
1 |
|
|
|
|
|
|
+ |
|
1 |
1 |
0 |
|
|
|
|
|
|
1 |
0 |
0 |
0 |
1 |
|
|
|
|
|
|
6
Вычитание в двоичной системе счисления: |
|
|
|
|
||||
|
|
|
0 |
– |
0 |
= |
0 |
|
|
|
|
10 |
– |
1 |
= |
1 |
|
|
|
|
1 |
– |
0 |
= |
1 |
|
|
|
|
1 |
– |
1 |
= |
0 |
|
Пример №2: |
|
|
|
|
|
|
||
1 |
0 |
1 |
1 |
|
|
|
|
|
- |
1 |
1 |
0 |
|
|
|
|
|
|
1 |
0 |
1 |
|
|
|
|
|
Сложение в восьмеричной системе счисления: |
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
7 |
+ 1 = 10 |
|
|
|
|
|
|
|
||||||
Пример №3: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
1 |
|
|
|
|
1 |
|
|
|
|
4 |
2 |
3 |
|
|
4 |
2 |
3 |
4 |
2 |
|
|
3 |
|
|
|
4 |
|
2 |
3 |
|
|
4 |
2 |
3 |
|
+ 4 |
6 |
7 |
|
|
+ 4 |
6 |
5 |
+ 4 |
6 |
|
7 |
|
+ |
4 |
6 7 |
|
+ |
4 |
6 |
7 |
|||||
|
|
|
|
|
|
|
2 |
|
|
0 |
|
|
|
|
|
0 |
|
|
|
|
1 |
0 |
1 |
2 |
|
|
|
|
|
|
|
|
2 |
|
|
1 |
|
|
2 |
|
1 |
1 |
|
1 |
2 |
|
|
|
|
|
|
Вычитание в восьмеричной системе счисления: |
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
10 |
- |
1 = |
7 |
|
|
|||
|
Пример №4: |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
8 |
|
|
8 |
|
|
|
|
8 |
8 |
4 |
6 |
2 |
|
4 |
5 |
2 |
3 |
5 |
|
2 |
|
3 |
5 |
2 |
|
- 1 |
7 |
3 |
|
- 1 |
7 |
3 |
- 1 |
7 |
|
3 |
|
- 1 |
7 |
3 |
|
2 |
6 |
7 |
|
|
|
7 |
|
|
6 |
|
7 |
|
2 |
6 |
7 |
|
|
Сложение в шестнадцатеричной системе счисления: |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
F(15) |
+ |
1 |
|
= 10 |
|
|
|
|
|
|
|
|
||||
|
|
Пример №5: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
1 |
|
|
|
|
|
1 |
А |
3 |
|
|
1 |
A |
|
3 |
|
|
|
|
1 |
|
А |
3 |
|
|
|
|
|
1 |
А |
3 |
|||||
+ |
F |
1 |
Е |
+ |
|
F |
1 |
|
|
|
Е |
|
+ |
|
F |
1 |
|
|
Е |
+ |
F |
1 |
Е |
|||||||
1 |
0 |
С |
1 |
|
|
|
|
|
|
1 |
|
|
|
|
|
|
С |
1 |
|
|
|
|
|
0 |
|
|
||||
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
1 |
0 |
С |
1 |
|||||
|
|
Вычитание в шестнадцатеричной системе счисления: |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
10 |
– |
1 |
= |
|
F(15) |
|
|
|
|
|
|
|
||||||||
|
|
Пример №6: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
F |
1 |
|
|
|
|
|
|
16 |
|
|
|
|
|
|
|
|
16 |
|
|
|
|
|
|
|
|
|||
- |
|
F |
2 |
|
|
1 |
Е |
|
1 |
|
|
|
|
0 |
|
|
Е |
|
1 |
|
|
|
|
|
|
|||||
|
|
|
|
|
- |
|
|
F |
2 |
|
|
|
- |
|
|
|
|
F |
2 |
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
F |
|
|
|
|
|
|
F |
F |
|
|
|
Практическая работа «Арифметика в различных системах счисления»
Задание №1. Найдите сумму чисел в двоичной системе счисления. Ответ переведите в другие системы счисления. Заполнить пропуски числами.
Двоичная |
Восьмеричная |
Десятичная |
Шестнадцатеричная |
|
|
|
|
10101 и 11100 |
|
|
|
|
|
|
|
1011110 и 1110010 |
|
|
|
|
|
|
|
1011111 и 1110111 |
|
|
|
|
|
|
|
Задание №2. Найдите разность чисел в двоичной системе счисления. Ответ переведите в другие системы счисления. Заполнить пропуски числами.
Двоичная |
Восьмеричная |
Десятичная |
Шестнадцатеричная |
|
|
|
|
7
10101 и 11100
1010110 и 1110110
11011101 и 11100111
Задание №3. Найдите сумму чисел в восьмеричной системе счисления. Ответ переведите в другие системы счисления. Заполнить пропуски числами.
Двоичная |
|
Восьмеричная |
|
Десятичная |
Шестнадцатеричная |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
31 и 47 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
233 и 471 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
142 и 347 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
654 и 456 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Задание №4. Найдите разность |
чисел в восьмеричной |
системе счисления. Ответ переведите в другие |
|||||||
системы счисления. Заполнить пропуски числами. |
|
|
|
|
|
||||
Двоичная |
|
Восьмеричная |
|
Десятичная |
Шестнадцатеричная |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
31 и 47 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
233 и 471 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
142 и 347 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
654 и 456 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Задание №5. Найдите сумму |
чисел в шестнадцатеричной системе счисления. Ответ переведите в другие |
||||||||
системы счисления. Заполнить пропуски числами. |
|
|
|
|
|
||||
Двоичная |
|
Восьмеричная |
|
Десятичная |
Шестнадцатеричная |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1А и F |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2C3 и 4D1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1E2 и 3B7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 и 67 |
|
|
|
|
|
|
|
|
|
|
|
Задание №6. Найдите разность |
чисел в шестнадцатеричной системе счисления. Ответ переведите в |
||||||||
другие системы счисления. Заполнить пропуски числами. |
|
|
|
||||||
|
Двоичная |
Восьмеричная |
|
Десятичная |
Шестнадцатеричная |
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1А и F |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2C3 и 4D1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1E2 и 3B7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 и 67 |
|
|
|
|
|
|
|
|
|
|
|
|