МПС

Арифметические основы МП-техники (Лекция)

 

ПЛАН ЛЕКЦИИ

1. Системы счисления

2. Преобразование чисел из одной системы счисления в другую

3. Законы алгебры логики

 

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

1. Системы счисления

Система счисления – это совокупность правил записи чисел цифровыми знаками. Системы счисления бывают позиционные и непозиционные.

В качестве классического примера непозиционной системы счисления обычно приводят римскую форму записи чисел. Сейчас, как и в глубокой древности, для записи числа используются так называемые “палочки”. Эта форма записи чисел наиболее понятна и требует для записи числа всего один символ. Число образуется суммой этих “палочек”. Наиболее яркий вариант использования такой системы счисления - это денежные отношения. Однако чем большее число требуется представить в такой системе счисления, тем большее количество цифр требуется для этого.

Позиционные системы счисления были придуманы относительно недавно для того, чтобы сэкономить количество цифр, используемое для записи чисел.

Значение цифры в позиционной системе счисления зависит от её позиции в записываемом числе. Дело в том, что в позиционной системе счисления число представляется в виде формулы разложения:

 

Ap=anpn+an-1pn-1+...+a2p2 +a1p1+a0p0+a-1p-1+a-2p -2+...+a-kp-k,

где p - основание системы счисления;

pi - вес единицы данного разряда;

ai - цифры, разрешённые в данной системе счисления.

 

При этом количество цифр в системе счисления зависит от основания. Количество цифр равно основанию системы счисления. В двоичной системе счисления две цифры, в десятичной – десять, а в шестнадцатеричной – шестнадцать. Число в любой позиционной системе счисления записываются в виде последовательности цифр:

 

A=anan-1...a2a1a0,a-1a-2 ...a-k,

 

где ai – цифры данной системы счисления, а цифра, соответствующая единицам определяется по положению десятичной запятой (или десятичной точки в англоязычных странах). Каждая цифра, использованная в записи числа, называется разрядом.

 

1.1. Двоичная система счисления

Основание этой системы счисления p равно двум. В этой системе счисления используется две цифры. Чтобы не выдумывать новых символов для обозначения цифр, в двоичной системе счисления были использованы символы десятичных цифр 0 и 1. Число в этой системе счисления записывается как сумма единиц, двоек, четвёрок, восьмёрок и так далее. То есть веса соседних разрядов различаются в два раза. Точно также записываются и числа, меньшие единицы. Недостатком двоичной системы счисления можно считать большое количество разрядов, требующихся для записи чисел. В качестве преимущества этой системы счисления можно назвать простоту выполнения арифметических действий.

 

1.2. Восьмеричная система счисления

Основание этой системы счисления p равно восьми. Восьмеричную систему счисления можно рассматривать как более короткий вариант записи двоичных чисел, так как число восемь является степенью числа два. В этой системе счисления используется восемь цифр. Чтобы не выдумывать новых символов для обозначения цифр, в восьмеричной системе счисления были использованы символы десятичных цифр 0, 1, 2, 3, 4, 5, 6 и 7.

A8=125,468=1*82+2*81+5*80+4*8-1+6*82=

6410+1610+510+410/810+610/6410=85,5937510

Во второй строке приведённого примера фактически осуществлён перевод числа, записанного в восьмеричной форме в десятичное представление того же самого числа. Так как в формуле используются простые дроби, то возможен вариант, что точный перевод из одной формы представления в другую становится невозможным. В этом случае ограничиваются заданным количеством дробных разрядов.

 

1.3. Шестнадцатеричная система счисления

Основание этой системы счисления p равно шестнадцати. Эту систему счисления можно считать ещё одним вариантом записи двоичного числа. В этой системе счисления используется шестнадцать цифр. Здесь уже не хватает десяти цифр, поэтому приходится придумать недостающие шесть цифр. Для обозначения этих цифр можно воспользоваться первыми буквами латинского алфавита. В качестве цифр в шестнадцатеричной системе используются символы 0, …., 9, A, …., F.

 

A16=2AF,C416=2*162+10*161+15*160+12*16-1+4*16-2=51210+16010+1510+1210/1610+410/25410= 687,76562510

Из приведённых примеров записи чисел в различных системах счисления вполне очевидно, что для записи одного и того же числа с одинаковой точностью в разных системах счисления требуется различное количество разрядов. Чем больше основание системы счисления, тем меньшее количество разрядов требуется для записи одного и того же числа.

 

2. Преобразование чисел из одной системы счисления в другую

Преобразование целых чисел и правильных дробей выполняется по разным правилам. В действительном числе преобразование целой и дробной части производят по отдельности.

 

2.1. Преобразование целых чисел

Для перевода необходимо исходное число разделить на основание новой системы счисления до получения целого остатка, который является младшим разрядом числа в новой системе счисления (единицы). Полученное частное снова делим на основание системы и так до тех пор, пока частное не станет меньше основания новой системы счисления. Все операции выполняются в исходной системе счисления. Возьмём десятичное число А10 = 124 и поделим его на основание двоичной системы, то есть число 2:

В результате первого деления получим разряд единиц (самый младший разряд). В результате второго деления получим разряд двоек. Деление продолжаем, пока результат деления больше двух. В конце операции преобразования мы получили двоичное число 11111002.

Аналогичным образом можно выполнить перевод из шестнадцатеричной формы в двоичную и обратно. В этом случае для шестнадцатеричной цифры потребуется четыре двоичных разряда. Четыре двоичных разряда обычно называют тетрадой. Иногда при переводе иностранных книг используется термин нибл. В качестве примера переведем шестнадцатеричное число 7С16 в двоичную форму представления:

 

На этом рисунке внизу выделены двоичные тетрады и соответствующие им шестнадцатеричные цифры. Их соответствие можно проверить при помощи таблицы. Сверху выделены триады и соответствующие им восьмеричные цифры. Старшая триада получилась неполной. Её нужно дополнить старшими незначащими нулями для того, чтобы можно было бы воспользоваться таблицей.

 

2.2. Преобразование дробной части числа

Так как дробная часть числа меньше единицы, то её преобразование выполняется умножением исходного числа на основание новой системы счисления. Целая часть результата умножения будет старшим разрядом числа в новой системе счисления. Дробную часть произведения снова умножают на основание системы счисления. Операция умножения выполняется до достижения требуемой точности результата. Все операции выполняют по правилам исходной системы счисления. Для примера рассмотрим перевод дробного числа из десятичной системы счисления в двоичную. Пусть исходное число A будет равно 0,35. Выполним операцию умножения:

В результате преобразования получим двоичное представление числа A: A = 0,3510 = 0,01011.

В общем случае перевод правильных дробей является бесконечным. Число разрядов в новой системе можно найти исходя из одинаковой точности представления чисел в разных системах счисления. Одинаковая точность числа, записанного в различных системах счисления, достигается при одинаковых весах младших разрядов соответствующей системы счисления. Определить вес младшего разряда числа можно по следующей формуле: M = q-n, где q - основание системы счисления. Определим необходимое число разрядов в двоичной системе для рассмотренного примера. Для десятичного числа 0.35 вес младшего разряда M = 1/100 = 0.01.

 

3. Законы алгебры логики

Законы алгебры логики базируются на аксиомах и позволяют преобразовывать логические функции. Логические функции преобразуются с целью их упрощения, это ведет к упрощению цифровой схемы. АКСИОМЫ описывают действие функций “И” и ”ИЛИ”:

 

 

3.1. Закон одинарных элементов

Верхние два выражения могут быть полезны при построении коммутаторов, ведь подавая на один из входов элемента “2И” логический ноль или единицу можно либо пропускать сигнал на выход, либо формировать на выходе нулевой потенциал.

Второй вариант использования этих выражений заключается в возможности избирательного обнуления определённых разрядов многоразрядного числа. При поразрядном применении операции “И” можно либо оставлять прежнее значение разряда, либо обнулять его, подавая на соответствующие разряды единичный или нулевой потенциал. Например, требуется обнулить 6, 3 и 1 разряды. Тогда:

В приведённом примере видно, что для обнуления необходимых разрядов в маске (нижнее число) на месте соответствующих разрядов записаны нули, в остальных разрядах - единицы. В исходном числе (верхнее число) на месте 6 и 1 разрядов находятся единицы. После выполнения операции “И” на этих местах появляются нули. На месте третьего разряда в исходном числе находится ноль. В результирующем числе на этом месте тоже присутствует ноль. Остальные разряды, как и требовалось по условию задачи, не изменены. Точно так же можно записывать 1-цы в нужные разряды. В этом случае необходимо воспользоваться нижними двумя выражениями закона одинарных элементов. При поразрядном применении операции “ИЛИ” можно либо оставлять прежнее значение разряда, либо обнулять его, подавая на соответствующие разряды нулевой или единичный потенциал. Пусть требуется записать единицы в 7 и 6 биты числа.

Здесь в маску (нижнее число) записали единицы в седьмой и шестой биты. Остальные биты содержат 0 и не могут изменить первоначальное состояние исходного числа. Первое и последнее выражения позволяют использовать элементы с большим количеством входов в качестве элементов с меньшим количеством входов.

 Рис. Схема “2И-НЕ” на элементе “3И-НЕ”

 

Неиспользуемые входы в “ИЛИ” должны быть подключены к общему проводу схемы

 

Рис. Схема “НЕ” на элементе “2И-НЕ”

 

3.2. Законы отрицания

a)     Закон дополнительных элементов.  

b)     Двойное отрицание    

c)    Закон отрицательной логики

 

Закон отрицательной логики справедлив для любого числа переменных. Этот закон позволяет реализовывать “И” при помощи “ИЛИ” и наоборот: реализовывать “ИЛИ” при помощи “И”. Благодаря закону отрицательной логики можно реализовывать “ИЛИ” на “И”.

Рис. Логический элемент “2ИЛИ” на элементе “2И-НЕ” и двух инверторах.

 

3.3. Комбинационные законы

Комбинационные законы алгебры логики во многом соответствуют комбинационным законам обычной алгебры, но есть и отличия.

a. закон тавтологии (многократное повторение)

XÈXÈXÈX=X                                               XÇXÇXÇX=X

Этот закон позволяет использовать логические элементы с большим количеством входов в качестве элементов с меньшим количеством входов. Например, можно реализовать 2И на 3И:

Рис. Схема “2И-НЕ”, реализованная на элементе “3И-НЕ”

 

Или использовать схему 2И-НЕ в качестве обычного инвертора:

 

Рис. Схема “НЕ”, реализованная на элементе “2И-НЕ”

 

Для уменьшения числа входов в элементе лучше воспользоваться законом одинарных элементов.

a. закон переместительности                     AÈBÈCÈD=AÈCÈBÈD

b. закон сочетательности  

AÈBÈCÈD=AÈ (BÈC) ÈD=AÈBÈ (CÈD)

c. закон распределительности

X1(X2ÈX3)= X1X2 È X1X3

 

X1ÈX2X3=(X1ÈX2)(X1ÈX3)=

X1X1È X1X3ÈX1X2ÈX2X3=X1(1ÈX3ÈX2)ÈX2X3= X1ÈX2 X3

 

3.4. Правило поглощения (одна переменная поглощает другие)

X1ÈX1X2 X3 =X1(1ÈX2 X3)=X1

 

3.5. Правило склеивания (выполняется только по одной переменной)

Также как в обычной математике в алгебре логики имеется старшинство операций.

1.     Действие в скобках

2.     Операция с одним операндом (одноместная операция) – НЕ

3.     Конъюнкция - И

4.     Дизъюнкция - ИЛИ

5.     Сумма по модулю два.

Операции одного ранга выполняются слева направо в порядке написания логического выражения. Алгебра логики линейна и для неё справедлив принцип суперпозиции.