Доставка цветов в Севастополе: SevCvety.ru
Главная -> Появление первого микропроцессора

0 1 2 3 [4] 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116

разряд знака S опускается. В «-разрядной сетке целых беззнаковых чисел, как и для дробных, может быть представлено множество 2" целых, в том числе 2" - 1 ненулевых, чисел, удовлетворяющих неравенству

Лг..in = 2° = 1 < Л 2 < Л,„.ах = 2" - 1. (1.5)

В свернутой форме эти числа изображаются такими же последовательностями цифр, как и дробные числа, отличаясь лишь положением запятой: А2тт - 00...01, и Лгпах = = 11...11,.

В формулах (1.2) - (1.5) двоичные числа представлены в виде полинома, коэффициенты которого выражены двоичными цифрами, а основание - десятичным числом, т. е. цифрой 2. Учитывая, что в любой позиционной систе ме счисления ее основание однозначно представляется с помощью цифр этой системы в виде 10 (по определению, /? = (/?-1)+1, а такая операция дает нуль в младшем разряде и единицу переноса в старший разряд), формулы (1.2) - (1.5) можно обобщить на случай любой позиционной системы:

Л/гф = ±2а,-10Г, 10Г<1Лед<1-10Г; (1.6) 1=1

Л/г = Чг 2 а,-ICfi, 1<Л«<10-1, (1.7)

где обозначение модуля введено для знакокых чисел, а неравенства справедливы для всех ненулевых значений представляемых чисел. Формула (1.6) определяет свойства дробных, а (1.7) -целых чисел с основанием 10д. Эти формулы полезны, в частности, при рассмотрении чисел в десятичной и шестнадцатеричной системах счисления, широко используемых в микропроцессорах наряду с двоичной системой.

Для представления в микропроцессорах систем счисления с основанием R=10 и /? = 16 используются смешанные системы счисления, в которых каждая цифра /?-ичной системы изображается цифрами другой, Q-ичной (Q <;/?), в частности двоичной, системы [47, 53, 61, 75]. Такая смешанная система назьшается Q - .-ичной. Для записи /?-ичной цифры отводится одно и то же количество Q-ичных разрядов, минимально необходимое для пред-



ставления любой /?-ичной цифры. В двоично-десятичной системе каждая десятичная цифра кодируется тетрадой двоичных цифр, причем между десятью (из возможных 2* = 16) двоичными числами и десятичными цифрами устанавливается взаимно однозначное соответствие. Возможны различные варианты установления этого соответствия, порождающие различные двоично-десятичные коды с теми или иными свойствами [17, 53]. В программах данного пособия используется один из наиболее распространенных кодов - код с естественными весами 8421, в котором десятичные цифры кодируются их естественными двоичными эквивалентами: (0,0000), (1,0001), (9,1001). Этот код преимущественно применяется для ввода-вывода данных (при преобразованиях из двоичной системы в двоично-десятичную и наоборот), но может использоваться и непосредственно при обработке данных.

В частном случае смешанных систем, когда R = = (/г - целое), например /? = 16, Q = 2 (/г = 4), запись числа в /?-ичной системе является сокращенной записью представления этого числа в Q-ичной системе: цифра шестнадцатеричной системы заменяет значение четырех цифр двоичной системы, что упрощает описание представлений двоичных чисел. Эта смешанная система широко используется в программах, приведенных в данной книге.

Известно, что арифметические операции над числами в любой позиционной системе счисления выполняются по тем же правилам, что и в десятичной арифметике, поскольку все они основываются на общих правилах выполнения операций над соответствующими полиномами [47, 54]. При этом используются те таблицы сложения (вычитания) и умножения, которые имеют место в конкретной системе счисления. В частности, для двоичной системы действуют правила:

0 + 0 = 0

-0 = 0

0X0 = 0

0+1 = 1

-0=1

0X1 =0

1+0=1

- 1 =0

1 хо = о

1 + 1 = 10

-1 = 1

1X1 = 1

Эти правила не содержат операции деления двоичных цифр, поскольку ее выполнение в отличие от других операций не может быть сведено к действиям над отдельными цифрами. Заметим, что при сложении в двоичном разряде



двух единиц происходит перенос из данного разряда в следующий, более старший разряд, а при вычитании в двоичном разряде единицы из нуля происходит заем в данный разряд из более старшего разряда, в результате в данном разряде устанавливается единица.

При выполнении арифметических операций возникает проблема идентификации отрицательных чисел. Как от-меч.алось выше, для изображения знака двоичных знаковых чисел отводится специальный знаковый разряд 5. Изображение знака «-Ь» в этот разряде принято кодировать для двоичных чисел цифрой О, а знака « -» - цифрой I. При этом изображение числа со знаком содержит только двоичные цифры, но само число подразумевается состоящим из двух частей: знаковой и цифровой.

Если цифровая часть положительных и отрицательных чисел содержит всегда абсолютную величину числа, то такой способ представления знаковых чисел называют прямым кодом. Обработка чисел, представленных в прямом коде, требует отдельных операций над цифровой и знаковой частями, альтернативного выполнения операций сложения и вычитания, приводит к появлению двух представлений нуля: -j-O и - О (например, для дробных чисел -f О = 0,00...00; -О = 1,00...00). Эти недостатки прямого кода сдерживают его использование для обработки данных, и он находит применение преимущественно в операциях ввода-вывода данных (хотя известны примеры использования его в микроЭВМ для основного представления знаковых чисел [39]). В микропроцессорах для обработки знаковых чисел используются в основном дополнительные коды (в качестве промежуточных - также и обратные коды) [17, 52, 63, 75].

Рассмотрим определения и свойства этих кодов. Пусть знаковое число с фиксированной запятой содержит п -j- 1 /?-ичных разрядов, причем крайний левый разряд в формате числа - разряд знака, в котором закодирован цифрой О, а « -» - цифрой R - 1 (1-для двоичной, 9 - для десятичной, F - для шестнадцатеричной системы счисления). Тогда дополнительный код числа определяется выражением

где Г - граница числа, причем для дробных чисел Г - = \Qk{V=2 для R=2, Г= 10 для = 10 и Г= 16 для



0 1 2 3 [4] 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116



0.0104
Яндекс.Метрика