Форма представления чисел с плавающей запятой

Форма представления чисел с плавающей запятой может быть представлен формулой x = M · sp

В формуле M – является мантиссой числа, представляющая собой дробь со знаком.

p – величина, указывающая позицию запятой в числе.

s – основание системы счисления.

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

32 бита

бит 31 – знак биты 30-23 – величина p* биты 22-0 – мантисса М

 

64 бита

бит 63 – знак биты 62-52 – величина p* биты 51-0 – мантисса М

 

Представление числа осуществляется в соответствии со следующим алгоритмом (на примере числа -18,2).

1. Переводим модуль числа в двоичную систему в соответствии с ранее рассмотренными примерами. Получаем значение 10010.001100110011, где

0,2

 

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

10010.001100110011 p=0
1001.0001100110011 p=1
100.10001100110011 p=2
10.010001100110011 p=3
1.0010001100110011 p=4

 

3. Составляем так называемую характеристику числа, которая определяется по формуле p* = p + n, где n – число выравнивания, равное 127 для 32-х битных чисел, и 1023 для 64-х битных. В нашем случае p* = 4 + 127 = 131 (100000112).

4. Составляем число в машинном регистре

p* = 131 мантисса M

 

5. Добавляем знак обратным или дополнительным кодом.

Дополнительный код
Обратный код

 

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

2 Лекция 2 – Логические основы цифровой техники

2.1 Тема 1: "Представление информации физическими сигналами"

Для работы цифровой техники существенное значение занимает понятие тактирования.

Определение: Под машинным тактом понимается временный интервал между двумя элементарными машинными операциями. Тактовой частотой называется величина, равная числу тактов, совершаемых процессором за 1 секунду времени.

До середины девяностых годов процессорная техника характеризовалась строгим правилом: один такт – одна команда. С появлением процессоров Pentium компании Intel это правило было изменено. Разработчики внедрили в процессор специальный блок, увеличивающий внутреннюю частоту процессора. При этом за каждый такт ЭВМ внутри процессора может выполниться несколько элементарных операций. Например подсчитано выражение 2 + (2 * 2). Например, для процессора Intel Pentium 1 ГГц, внешняя тактовая частота составляет 333 МГц, с тройным умножением внутри.

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

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

 

Импульсный способ представления информации заключается в том, что вычислительное устройство определяет на входе значение 0 или 1 только в начале такта по фронту сигнала (от единицы к нулю, или наоборот), и далее не анализирует значение, даже при его изменении в течение данного такта.

Информация в цифровом устройстве может представляться последовательным или параллельным кодом. Цифровые устройства в зависимости от применяемого кода подразделяются на последовательные и параллельные.

 

При последовательном коде в каждом временном такте на выходе цифрового устройства представляется 1 двоичный разряд (бит). Обработка многоразрядной информации в этом случае требует соответствующего числа тактов. Примером последовательных цифровых устройств являются компьютерные порты RS-232, USB, Firewire, а также практически все системы связи.

При параллельном коде в одном такте представляются все разряды многоразрядного двоичного числа. Обработка и передача многоразрядной информации требует в этом случае соответствующего числа параллельно действующих цифровых устройств и физических линий передачи. Примерами параллельных устройств являются шины PCI, AGP, интерфейсы LPT (Centronix).

2.2 Тема 2: "Логические функции"

Информация в цифровом устройстве представляется в виде двоичных кодовых слов, длина которых в двоичных разрядах кратна байту. Например, 32-битное слово имеет длину 4 байта, и позволяет хранить десятичные числа от 0 до 16 млн.

Определение: При обработке информации на входы некоторого цифрового устройства поступают входные кодовые слова. На выход также поступают кодовые слова, которые являются результатом обработки входных кодовых слов по заданному алгоритму. То есть выходное слово является функцией от входных слов. Поскольку аргументом функции является логическая переменная, функции носят название логической. В каждом разряде результата логическая функция может принимать только два значения – 0 и 1. Логические функции являются дискретными.

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

При табличном способе задания функция определяется при всех возможных комбинациях входных переменных. Если число аргументов функции равно n, то число различных комбинаций этих переменных составляет 2n.

Например, при n = 3 таблица истинности функции суммирования имеет вид.

x1 x2 x3 f(x1x2x3)

 

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

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

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

x1 Название
x2
x1 × x2 Логическое И
x1 v x2 Логическое ИЛИ
x1 ® x2 Импликация
x1 Å x2 Сумма по модулю 2
x1 ¥ x2 Функция равнозначности
x1 D x2 Отрицание импликации
x1 | x2 Логическое И-НЕ
x1 ¯ x2 Логическое ИЛИ-НЕ
__ x1 Логическое НЕ

 

Определения:

Функция логического И возвращает логическую 1, если каждый бит, участвующий в операции, имеет значение логической единицы. Операция носит название (AND).

Функция логического ИЛИ возвращает логическую 1, если хотя бы один из битов, участвующий в операции, имеет значение логической 1. Операция носит название (OR).

Функция импликации, или функция следования возвращает логический 0 только в одном случае – когда первый аргумент принимает значение логической единицы, а второй – логического нуля.

Функция суммирования по модулю 2, или функция исключающего ИЛИ возвращает логическую 1 в случае неравенства битов, участвующих в операции. В машинных языках операция носит название XOR. Про данную функцию также говорят "наложить маску". Это означает следующее. Если бит второго аргумента функции равен логической 1, то вне зависимости от значения первого аргумента результат будет равен 1. Если бит второго аргумента функции равен 0, то результат будет равен значению бита второго аргумента. Данная функция нашла широкое применение в компьютерных играх, поскольку позволяет производить наложение изображений.

Функция равнозначности возвращает логическую 1 в случае равенства битов, участвующих в операции. Если хотя бы один бит отличается от других – значением функции является логический 0. В машинных языках данная функция реализуется двумя операциями – сначала операцией исключающего ИЛИ, а затем операцией отрицания НЕ.

Отрицание импликации является функцией, обратной к простой функции импликации.

Функция логического И-НЕ является обратной функции И, и реализуется двумя машинными операциями – сначала логическое И, а затем отрицание НЕ.

Функция логического ИЛИ-НЕ является обратной функции ИЛИ, и реализуется двумя машинными операциями – сначала логическое ИЛИ, а затем отрицание НЕ.

Функция логического отрицания НЕ, или функция инвертирования битов, возвращает логическую единицу, если исходный бит равен логическому 0, и наоборот. Если исходный бит равен логической 1, то результирующий бит будет равен 0. В машинных языках данная функция реализуется оператором NOT.

Примеры:

Для перевода положительного числа в отрицательное методом обратного кода используется операция отрицания НЕ. Например, перевод числа 2 в -2 осуществляется следующим образом.

НЕ 0010 = 1101.

Для перевода положительного числа в отрицательное методом дополнительного кода используется операция исключающие ИЛИ. Например, перевод числа 2 в -2 осуществляется следующим образом.

0010 XOR 1000 = 1010

Обратное преобразование должно проводится операцией ИЛИ.

1010 ИЛИ 0111 = 0010

3 Лекция 3 – Свойства логических функций

3.1 Тема 1: "Свойства конъюнкции, дизъюнкции и инверсии"

Даная тема поясняет правила выполнения функций И, ИЛИ, НЕ при числе аргументов больших двух.

Порядок выполнения операций в сложном логическом выражении следующий. Сначала всегда выполняется функция инверсии (логического НЕ), затем конъюнкция (И), затем дизъюнкция (ИЛИ).

Порядок выполнения операций может быть изменен с помощью скобок. При этом необходимо рассмотреть свойства операций И, ИЛИ.

сочетательный закон
переместительный закон
распределительный закон

Легко убедиться в справедливости следующих выражений.

Формулы де Моргана

3.2 Тема 2: "Системы логических функций, или базисы"

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

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

Примеры функционально полных систем, реализованных в простых микросхемах: И, ИЛИ, НЕ, И-НЕ, ИЛИ-НЕ.

3.3 Тема 3: "Понятие о комбинационной схеме и цифровых автоматах"

Преобразование информации в ЭВМ производится устройствами 2-х классов:

- комбинационными устройствами;

- цифровыми автоматами.

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

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

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

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

 

ЗЭ – запоминающий элемент цифрового автомата

КУ – комбинационное устройство

x – разряды входного слова

q – разряды состояния цифрового автомата

y – разряды выходного слова

3.4 Тема 4: "Введение в серии логических элементов"

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

Определение: Логические элементы выпускаются в виде серий, содержащих функционально полный набор логических элементов, и объединенных общими электрическими, конструктивными и технологическими параметрами.

В зарубежной практике серии логических элементов получили название чипсет – или набор элементов.

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

Большинство современных серий содержат элементы малой степени интеграции (ИС – интегральные схемы), средней степени интеграции (СИС), большой степени интеграции (БИС) и сверхбольшой степени интеграции (СБИС).

В целях снижения массогабаритных характеристик часто однотипные логические элементы располагают в одной интегральной микросхеме. Например,

4 элемента 2И-НЕ К 155 ЛА3, К 555 ЛА3, К 1533 ЛА3 2 элемента 5ИЛИ-НЕ К 155 ЛЕ3, К555 ЛЕ3, К1533 ЛЕ3
    1 элемент 4-2-3-2И-4ИЛЕ-НЕ К 530 ЛР9  

 

Основными параметрами логических элементов являются:

- уровни питающих напряжений;

- уровни сигналов для представления 0 и 1;

- нагрузочная способность;

- помехоустойчивость;

- рассеиваемая мощность;

- быстродействие.

Основными типами интегральных микросхем являются:

- элементы ТТЛ (транзисторно-транзисторная логика);

- элементы транзисторной логики с эмиттерными связями ЭСТЛ;

- элементы на МОП-транзисторах;

Схемы ТТЛ относятся к интегральным цифровым элементам со средним быстродействием. Время задержки обработки сигнала составляет 10-30 нс. Эффективная частота работы составляет около 5 МГц.

Нагрузочная способность элементов ТТЛ составляет 30 других элементов ТТЛ.

Более высокое быстродействие имеют логические элементы ЭСТЛ (1-3 нс), в которых не требуется входа управляющих транзисторов в режим насыщения.

Интегральные микросхемы на МОП-транзисторах являются более медленными, чем ТТЛ и ЭСТЛ. Время задержки обработки сигнала составляет 50-100 нс. Однако их достоинствами являются меньшая потребляемая мощность, большая нагрузочная способность и помехоустойчивость, технологичность и дешевизна.

Большей производительностью обладает разновидность МОП логических элементов, получившая название КМОП-логики.

Современные серии микросхем, выпускаемые ведущими зарубежными производителями, включая наборы Pentium, являются КМОП-логикой.

4 Лекция 4 – Минимизация логических функций

4.1 Тема 1: "Канонические формы представления логических функций"

Все логические функции, рассмотренные на предыдущей лекции, могут быть выражены всего с помощью трех операций: операции инверсии (НЕ), операции умножения (И) и операции сложения (ИЛИ).

Дизъюнктивной нормальной формой (ДНФ) называется такая форма представления функции, при которой логическое выражение строится в виде дизъюнкции (сложения) ряда членов, каждый из которых является простой конъюнкцией (перемножением) аргументов или их инверсий.

Если в каждом члене ДНФ представлены все аргументы функции, то такая форма называется СДНФ (совершенная ДНФ). Пример:

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

Если в каждом члене КНФ представлены все аргументы функции, то такая форма называется СКНФ (совершенная КНФ). Пример:

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

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

Пример:

x1 x2 f(x1, x2)

 

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

4.2 Тема 2: "Минимизация логических функций методом карт Вейча-Карно"

Минимизация логических функций методом карт Карно применяется для упрощения реализации логической функции в программном или аппаратном обеспечении. Примером необходимости в применении карт Вейча-Карно являются компьютерные игры, где реакция персонажа зависит от 3-4 действий, совершаемых в различных комбинациях.

Минимизацию логических функций методом карт Карно рассмотрим на примере функции из четырех переменных – f(x1, x2, x3, x4). При этом запишем формулу в форме ДНФ.

Далее приведем три формы карты Карно – для функций из двух параметров, трех, и четырех.

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

 

Сначала выберем две формы записи карт Карно для логической функции из четырех параметров
Зоны, попадающие под черту – называются зонами перекрытия. На следующих рисунках показаны зоны перекрытия для параметра x1
В эти карты запишем логическую единицу в ту ячейку, которая перекрывается всеми зонами перекрытия, за исключением тех, для которых задано инверсное значение. То есть, в выражении единица должна стоять в той ячейке, которая перекрывается зонами перекрытия x1, x3, и не перекрывается зонами x2, x4
Аналогично заполним остальные ячейки, при этом, для облегчения восприятия, индексом укажем номер слагаемого, к которому относится логическая единица.
Теперь выделим квадратные или прямоугольные зоны, состоящие только из одних единиц, число которых должно быть кратно числам 2, 4, 8, 16, 32 и пр., то есть 2n
И наконец, составим минимизированное уравнение. Для этого определим, какие зоны перекрытия полностью перекрывают или полностью не перекрывают выделенные группы. Объединим параметры одной группы операцией И, а сами группы – операцией ИЛИ. При этом, если группа полностью перекрывается зоной X, то в результирующей формуле ей будет соответствовать прямой X, если полностью не перекрывается – то инверсный X.
Квадратная группа полностью закрывается x3x4. Прямоугольная группа полностью перекрывается x1x3 и не перекрывается x2. Длинная группа полностью перекрывается x3x4. Короткая группа полностью перекрывается x1x3 и не перекрывается x2.

 

4.3 Тема 3: "Синтез комбинационных схем"

Синтез комбинационных схем включает в себя следующие основные этапы.

1. Составление таблицы истинности логической функции (или набора функций), осуществляющих работу схемы.

2. Получение аналитического выражения для логической функции в минимальной форме.

3. Преобразование логических выражений к требуемому базису.

4. Составление структурной схемы комбинационного устройства.

Первые два пункта были реализованы в предыдущей теме.

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

- в базисе И, ИЛИ, НЕ;

- в базисе И-НЕ.

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

Реализация указанной функции на базе имеющихся серий микросхем может быть представлена с помощью двух микросхем: К 155 ЛР2 и К 155 ЛН1.

 

Для преобразования указанной функции к более распространенному базису И-НЕ воспользуемся правилом де Моргана.

5 Лекция 5 – Комбинационные схемы

5.1 Тема 1: "Функциональные узлы комбинационного типа"

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