- •1. Классификация и информационно-логические основы построения эвм
- •1.5. Представление информации в вычислительных машинах
- •Представление чисел с фиксированной и плавающей запятой
- •Выполнение операций над числами с плавающей запятой
- •Алгебраическое представление двоичных чисел
- •Арифметические операции в двоичной системе счисления
- •Выполнение арифметических операций в дополнительных кодах
- •Особенности выполнения операций в обратных кодах
- •Представление информации в других системах счисления
- •Арифметические операции в шестнадцатеричной системе счисления
- •1.6. Особенности кодирования информации в персональном компьютере
- •1.7. Логические основы построения вычислительной машины
- •Элементы алгебры логики
- •Выполнение логических операций в компьютере
- •Xor (исключающее или)
- •Логический синтез вычислительных схем
1. Классификация и информационно-логические основы построения эвм
1.5. Представление информации в вычислительных машинах
Информация в компьютере кодируется в двоичной или в двоично-десятичной системах счисления.
Система счисления способ наименования и изображения чисел с помощью символов, имеющих определенные количественные значения. В зависимости от способа изображения чисел, системы счисления делятся на следующие:
позиционные;
непозиционные.
В позиционной системе счисления количественное значение каждой цифры зависит от ее места (позиции) в числе. В непозиционной системе счисления цифры не меняют своего количественного значения при изменении их расположения в числе. Количество (Р) различных цифр, используемых для изображения числа в позиционной системе счисления, называется основанием системы счисления. Значения цифр лежат в пределах от 0 до Р - 1.
В общем случае запись любого смешанного числа в системе счисления с основанием Р будет представлять собой ряд вида:
N = am-1Рm-1 + am-2Pm-2 +…+ a1P1 + a0P0 + a-1P-1 + a-2P-2 +…+ a-sP-s. (1)
Нижние индексы определяют местоположение цифры в числе (разряд):
положительные значения индексов – для целой части числа (т разрядов);
отрицательные значения – для дробной (s разрядов) части числа.
Максимальное целое число, которое может быть представлено в т разрядах:
Nmax=Pm-1. (2)
Минимальное значащее, не равное 0 число, которое можно записать в s разрядах дробной части:
Nmin=P-s.
Имея в целой части числа m, а в дробной – s разрядов, можно записать всего Pm+s разных чисел.
Двоичная система счисления имеет основание Р = 2 и использует для представления информации всего две цифры: 0 и 1. Существуют правила перевода чисел из одной системы счисления в другую, основанные, в том числе, и на соотношении (1).
Например, двоичное число 101110,101 равно десятичному числу 46,625.
101110,101(2) = 1·25 + 0·24 + 1·23 + 1·22 + 1·21 + 0·20 + 1·2-1 + 0·2-2 + 1·2-3 =
=46,625(10).
Практически перевод из двоичной системы в десятичную можно легко выполнить, надписав над каждым разрядом соответствующий ему вес и сложив затем произведения значений соответствующих цифр на их веса.
Двоичное число 010000012 равно 6510. Действительно, 64·1 + 1·1 = 65.
Вес Цифра |
128 0 |
64 1 |
32 0 |
16 0 |
8 0 |
4 0 |
2 0 |
1 1 |
Для перевода из двоичной системы в десятичную можно воспользоваться и другим приемом: слева направо, начиная со старшего разряда, производится цепочка умножений на 2 с прибавлением 1, если в следующем разряде стоит 1, и без прибавления 1, если в следующем разряде стоит 0. Произведем для примера перевод двоичного кода 1011:
1·2 = 2; 2·2 + 1 = 5; 5·2 + 1 = 11.
Действительно,
1·23 + 0·22 + 1·21+1·20 = 11.
Таким образом, для перевода числа из позиционной системы счисления с любым основанием в десятичную систему счисления можно воспользоваться выражением (1).
Для перевода из десятичной системы в двоичную можно производить цепочку делений на 2 и справа налево записывать остатки:
11 : 2 = 5 1
5 : 2 = 2 11
2 : 2 = 1 011
1 : 2 = 0 1011
Обратный перевод из десятичной системы счисления в систему счисления с другим основанием непосредственно по формуле (1) весьма затруднителен, ибо все арифметические действия, предусмотренные этой формулой, следует выполнять в той системе счисления, в которую число переводится.
Алгоритм перевода числа из десятичной системы счисления в систему счисления с основанием Р, основанный на этих выражениях, позволяет оперировать с числами в той системе счисления, из которой число переводится, и может быть сформулирован следующим образом.
При переводе числа следует переводить его целую и дробную части отдельно.
Для перевода целой части необходимо после деления ее на Р, выполнить последовательные деления на Р целых частей получающихся частных до тех пор, пока очередная целая часть частного не окажется равной 0. Остатки от деления, записанные последовательно справа налево, образуют целую часть числа в системе счисления с основанием Р.
Для перевода дробной части необходимо после умножения ее на Р, выполнить последовательные умножения на Р дробных частей получающихся произведений до тех пор, пока очередная дробная часть произведения не окажется равной 0 или не будет достигнута нужная точность дроби. Целые части произведений, записанные после запятой последовательно слева направо, образуют дробную часть числа в системе счисления с основанием Р.
Рассмотрим перевод числа из десятичной системы в двоичную систему счисления на примере числа 46,625. Переводим целую часть числа:
46 : 2 = 23 (остаток 0);
23 : 2 = 11 (остаток 1);
11 : 2 = 5 (остаток 1);
5 : 2 = 2 (остаток 1).
2 : 2 = 1 (остаток 0).
1 : 2 = 0 (остаток 1).
Записываем остатки последовательно справа налево – 101110, то есть 4610= 10111022.
Переводим дробную часть числа:
0,625 · 2 = 1,250;
0,250 · 2 = 0,500;
0,500 · 2 = 1,000.
Записываем целые части получающихся произведений после запятой последовательно слева направо – 0,101, то есть 0,62510 = 0,1012. Окончательно 46,62510= 101110,1012.