Добавлен: 21.10.2018
Просмотров: 1166
Скачиваний: 12
Методические указания к выполнению
Контрольной работы
Системы счисления и арифметические операции в них
Совокупность приемов обозначения (записи) чисел называется системой счисления. Известны позиционные и непозиционные системы счисления.
В непозиционных системах счисления числовое значение символа не зависит от его местоположения в числе. Примером может служить римская.
В позиционных системах счисления каждая цифра или символ имеет свое определенное значение в зависимости от положения в числе и величина числа зависит не только от набора цифр, но и от того в какой последовательности записаны цифры.
Основание системы счисления – количество цифр, используемых для представления чисел в позиционной системе счисления.
Система счисления, использующая для своего образования 16 цифр: 0-9, A, B, C, D, E, F, называется шестнадцатеричной; использующая для своего образования 10 цифр от 0 до 9, называется десятичной системой счисления; использующая для своего образования 8 цифр (от 0 до 7) - восьмеричной; система счисления, в которой используются всего две цифры (0 и 1), называется двоичной системой счисления.
Для представления восьмеричных чисел достаточно трех двоичных разрядов. Такое описание называется триадным (запись по триадам). Для описания шестнадцатеричных чисел необходимо 4 двоичных разряда. Такая запись называется тетрадной (запись по тетрадам). Указанные записи используются при переводе чисел из двоичной системы счисления в шестнадцатеричную и восьмеричную систему счисления и обратно. В целой части числа группировка производится справа налево, в дробной части — слева направо. Если в последней группе недостает цифр, дописываются нули: в целой части — слева, в дробной — справа. Затем каждая группа заменяется соответствующей цифрой новой системы. Соответствия приведены в таблице 1.
Таблица 1
10 с/сч |
16 с/сч |
8 с/сч |
2 с/сч |
||
обычная запись |
по триадам |
по тетрадам |
|||
0 |
0 |
0 |
0 |
000 |
0000 |
1 |
1 |
1 |
1 |
001 |
0001 |
2 |
2 |
2 |
10 |
010 |
0010 |
3 |
3 |
3 |
11 |
011 |
0011 |
4 |
4 |
4 |
100 |
100 |
0100 |
5 |
5 |
5 |
101 |
101 |
0101 |
6 |
6 |
6 |
110 |
110 |
0110 |
7 |
7 |
7 |
111 |
111 |
0111 |
8 |
8 |
10 |
1000 |
001 000 |
1000 |
9 |
9 |
11 |
1001 |
001 001 |
1001 |
10 |
A |
12 |
1010 |
001 010 |
1010 |
11 |
B |
13 |
1011 |
001 011 |
1011 |
12 |
C |
14 |
1100 |
001 100 |
1100 |
13 |
D |
15 |
1101 |
001 101 |
1101 |
14 |
E |
16 |
1110 |
001 110 |
1110 |
15 |
F |
17 |
1111 |
001 111 |
1111 |
При переводе целого числа, представленного в десятичной системе счисления в шестнадцатеричную, восьмеричную или двоичную систему счисления, необходимо заданное число последовательно делить на основание 16, 8 или 2. Полученный от деления остаток будет младшим разрядом искомого 16, 8 или двоичного числа. Целая часть частного снова делится на 16, 8 или 2 и остаток будет следующим по старшинству разрядом и т.д. до тех пор, пока частное от деления не будет меньше основания (16, 8 или 2). Число читается снизу вверх. Такой способ перевода чисел называется правилом последовательного деления.
Для дробных чисел правило последовательного деления заменяется правилом последовательного умножения. Переводят отдельно целую и дробную части, затем второй результат приписывают к первому после запятой. При переводе дробной части числа из 10 системы счислении ее умножают на основание той системы, в которую переводят, выделяя при этом целые, образующие вначале старший, а затем младшие разряды искомого числа. Перевод осуществлен, когда во всех разрядах дробной части появятся нули или будет достигнута необходимая точность. Число читается сверху вниз.
Пример 1. Перевести данное число из десятичной системы счисления в двоичную (получить пять знаков после запятой в двоичном представлении).
а) 464(10); б) 380,1875(10); в) 115,94(10)
Решение
а) 464 |
0 |
|
б) 380 |
0 |
|
1875 |
|
в) 115 |
1 |
|
94 |
232 |
0 |
|
190 |
0 |
0 |
375 |
|
57 |
1 |
1 |
88 |
116 |
0 |
|
95 |
1 |
0 |
75 |
|
28 |
0 |
1 |
76 |
58 |
0 |
|
47 |
1 |
1 |
5 |
|
14 |
0 |
1 |
52 |
29 |
1 |
|
23 |
1 |
1 |
0 |
|
7 |
1 |
1 |
04 |
14 |
0 |
|
11 |
1 |
|
|
|
3 |
1 |
0 |
08 |
7 |
1 |
|
5 |
1 |
|
|
|
1 |
1 |
0 |
16 |
3 |
1 |
|
2 |
0 |
|
|
|
|
|
|
|
1 |
1 |
|
1 |
1 |
|
|
|
|
|
|
|
а) 464(10)=111010000(2); б) 380,1875(10) = 101111100,0011(2); в) 115,94(10) 1110011,11110(2)
(в данном случае было получено шесть знаков после запятой, после чего результат был округлен.)
Переведем из двоичной системы в шестнадцатеричную число 1111010101,11(2).
0011 1101 0101,1100(2) = 3D5,C(16).
При переводе чисел из системы счисления с основанием P в десятичную систему счисления необходимо пронумеровать разряды целой части справа налево, начиная с нулевого, и дробной части, начиная с разряда сразу после запятой, слева направо (начальный номер –1). Затем вычислить сумму произведений соответствующих значений разрядов на основание системы счисления в степени, равной номеру разряда. Это и есть представление исходного числа в десятичной системе счисления.
Пример 2. Перевести данное число в десятичную систему счисления:
а) 1000001(2).
1000001(2) = 1 26 + 0 25 + 0 24 + 0 23 + 0 22 + 0 21 + 1 20 = 64 + 1 = 65(10).
Замечание. Если в каком-либо разряде стоит нуль, то соответствующее слагаемое можно опускать.
б) 1000011111,0101(2).
1000011111,0101(2) = 1 29 + 1 24 + 1 23 + 1 22 + 1 21 + 1 20 + 1 2–2 + 1 2–4 =
= 512 + 16 + 8 + 4 + 2 + 1 + 0,25 + 0,0625 = 543,3125(10).
в) 1216,04(8).
1216,04(8) = 1 83 + 2 82 + 1 81 + 6 80 + 4 8–2 = 512 + 128 + 8 + 6 + 0,0625 = 654,0625(10).
г) 29A,5(16).
29A,5(16) = 2 162 + 9 161 + 10 160 + 5 16–1 = 512 + 144 + 10 + 0,3125 = 656,3125(10).
Для выполнения арифметических операций в системе счисления с основанием P необходимо иметь соответствующие таблицы:
а) двоичная система счисления
+ |
0 |
1 |
|
0-0=0 |
1-1=0 |
0 |
0 |
1 |
|
1-0=1 |
10-1=1 |
1 |
1 |
10 |
|
|
|
б) восьмеричная система счисления
+ |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
0 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
1 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
10 |
2 |
2 |
3 |
4 |
5 |
6 |
7 |
10 |
11 |
3 |
3 |
4 |
5 |
6 |
7 |
10 |
11 |
12 |
4 |
4 |
5 |
6 |
7 |
10 |
11 |
12 |
13 |
5 |
5 |
6 |
7 |
10 |
11 |
12 |
13 |
14 |
6 |
6 |
7 |
10 |
11 |
12 |
13 |
14 |
15 |
7 |
7 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
в) шестнадцатеричная система счисления
+ |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
0 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
1 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
2 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
3 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
4 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
5 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
6 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
7 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
8 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
9 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
A |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
B |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
1A |
C |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
1A |
1B |
D |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
1A |
1B |
1C |
E |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
1A |
1B |
1C |
1D |
F |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
1A |
1B |
1C |
1D |
1E |
Пример 3. Сложить числа:
а) 10000000100(2) + 111000010(2) = 10111000110(2);
б) 223,2(8) + 427,54(8) = 702,74(8);
в) 3B3,6(16) + 38B,4(16) = 73E,A(16).
|
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
|
|
|
2 |
2 |
3 |
, |
2 |
|
|
|
|
3 |
B |
3 |
, |
6 |
+ |
|
|
|
|
|
|
|
|
|
|
|
|
|
+ |
|
|
|
|
|
|
|
|
+ |
|
|
|
|
|
|
|
|
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
|
|
|
4 |
5 |
7 |
, |
5 |
4 |
|
|
|
3 |
8 |
B |
, |
4 |
|
1 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
|
|
|
7 |
0 |
22 |
, |
7 |
4 |
|
|
|
7 |
3 |
E |
, |
A |
Необходимость выполнения арифметических действий не только над положительными, но и над отрицательными числами привела к трем способам кодирования в ЭВМ: прямым, обратным и дополнительным кодами. Для положительного числа изображение во всех трех кодах совпадает и равно самому числу. Различие в кодах проявляется при изображении отрицательных чисел.
Чтобы получить прямой код отрицательного двоичного числа, нужно в знаковом ряде поставить 1, а цифровые разряды оставить без изменения.
Чтобы получить обратный код отрицательного двоичного числа, необходимо в знаковом разряде поставить 1, во всех цифровых разрядах заменить 0 на 1, а 1 на 0.
Для получения дополнительного кода необходимо в знаковом разряде поставить1, во всех цифровых разрядах 1 заменить на 0, а 0 на 1 и к последнему цифровому разряду прибавить 1.
Положительные числа во всех трех кодах записываются одинаково и имеют нуль перед запятой, числовые разряды совпадают с обычной формой записи числа.
Число |
Коды |
||
Прямой |
Обратный |
Дополнительный |
|
-0,11010101 |
1,11010101 |
1,00101010 |
1,00101011 |
0,10010011 |
0,10010011 |
0,10010011 |
0,10010011 |
Разработаны специальные правила выполнения арифметических операций в обратном и дополнительных кодах. Для того, чтобы сумматор правильно работал в обратном коде, необходимо чтобы он осуществлял циклическое подсуммирование из старшего цифрового разряда в младший. В этом случае сумма кодов будет равна обратному коду суммы. Сумматор, работающий в дополнительном коде, должен обеспечивать потерю единицы переноса.
Пример 4. Выполнить вычитание:
0,1101(2) – 0,0110(2)
1)
Х= |
|
0, |
1 |
1 |
0 |
1 |
|
|
[X]об= |
0, |
1 |
1 |
0 |
1 |
|
Y= |
-- |
0, |
0 |
1 |
1 |
0 |
|
|
[Y]об= |
1, |
1 |
0 |
0 |
1 |
|
X+Y= |
|
0, |
0 |
1 |
1 |
1 |
|
|
[X]об+[Y]об= |
1 0,Ю, |
0 |
1 |
1 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0, |
0 |
1 |
1 |
1 |
|