
- •Архитектура ом
- •Структура машин фон-Неймана, із загальною шиною, з каналами прямого доступу в пам'ять. Порівняльний аналіз і область застосування.
- •Апаратно-програмна реалізація обчислювальної системи. Призначення й основні функції операційної системи, однопрограмний і багатопрограмний режими роботи системи.
- •Класифікація операцій. Формати представлення команд і даних. Чотири-, трьох-, двох-, одно- і нуль-адресні команди. Определение наборов операций
- •Форматы команд
- •Способи адресації операндів. Безпосередня, пряма, непряма й індексна адресації. Призначення й область застосування.
- •Відносна, сторінкова і сегментна адресація. Переміщення програм і даних в оперативній пам'яті машини.
- •Операції переходу і розгалуження, їхня реалізація.
- •Операції звертання до підпрограм. Способи організації підпрограм. Організація динамічного розподілу пам'яті для підпрограм і їхніх даних.
- •Віртуальна пам'ять. Сторінкова організація віртуальної пам'яті. Алгоритми звертання до пам'яті.
- •Самообумовлені дані. Теги і дескриптори. Призначення і їхнє застосування.
- •Захист пам'яті. Призначення. Методи захисту верхніми і нижніми границями.
- •Захист пам'яті за допомогою ключів захисту. Структурна схема пам'яті з захистом. Достоїнства і недоліки.
- •Віртуальні процесори. Призначення і реалізація.
- •Віртуальні периферійні пристрої. Призначення, приклад реалізації.
- •Віртуальні машини. Призначення і приклад реалізації.
- •Операції вводу-виводу в ibm pc.
- •НкДтаЕ еом
- •Об'єкт діагностування, клас несправності, тест, система діагностування. Основні поняття і визначення.
- •Методи параметричного діагностування (пд).
- •Детермінований функціональний підхід до синтезу тестів.
- •Детермінований структурний підхід до синтезу тестів.
- •Обзор существующих методов
- •Застосування логічного моделювання для синтезу тесту.
- •Методи аналізу вихідних реакцій.
- •Ймовірний подхід до синтезу тестів.
- •Основні підходи до тестування мікропроцесорних пристроїв.
- •Попередні перетворення опису схем для синтезу схем.
- •Двійкова і двійково-кодована система числення.
- •Представлення числової інформації в еом.
- •Алгоритми додавання чисел.
- •Алгоритми множення чисел.
- •Алгоритми ділення чисел.
- •Виконання арифметичних операцій над числами з плаваючою крапкою.
- •Виконання арифметичних операцій у двійковій-десятковій системі числення.
- •Контроль по модулю арифметичних операцій.
- •Точність представлення чисел і виконання арифметичних операцій.
- •Проектування мпс
- •Мікропроцесори 2 і 3-го покоління фірми Intel.
- •Організація пам'яті в мікропроцесорних системах.
- •Організація переривань у мікропроцесорних системах.
- •Програмуємий послідовний інтерфейс мпс.
- •Організація вводу-виводу на базі віс пдп.
- •Реалізація внутрішніх системних інтерфейсів мпс.
- •Однокристальні мікро-еом фірми Intel.
- •Віс мпк 2 і 3-го поколінь фірми Intel.
- •Зовнішні інтерфейси мпс.
- •Структура пеом ibm pc.
- •Структура 32-х розрядних мікропроцесорів 4-го покоління фірми Intel.
- •Структура віс мікропроцесорного комплекту 4-го покоління для 32-х розрядних мікропроцесорних систем.
- •Комбінаційні схеми (кс). Основні поняття і визначення. Канонічний метод синтезу кс.
- •Комбінаційні схеми (кс). Аналіз кс. Основні методи аналізу кс.
- •Абстрактний автомат. Основні поняття і визначення. Класифікація. Способи завдання.
- •Способы описания и задания автоматов.
- •Канонічний метод синтезу кінцевого автомата.
- •Кодування внутрішніх станів автомата.
- •Кодирование состояний и сложность комбинационной схемы автомата.
- •Принцип мікропрограмного керування.
- •Структура операційного пристрою. Функції операційного і керуючого автоматів.
- •Мікропрограмні автомати (мпа). Інтерпретація граф-схеми алгоритму. Способы описания алгоритмов и микропрограмм
- •Канонічний метод синтезу мпа Милі з "жорсткою" логікою.
- •Канонічний метод синтезу мпа Мура з "жорсткою" логікою.
- •Достоинства и недостатки автоматов с жесткой логикой.
- •Синтез мпа Мура на базі регістру зсуву. Синтез управляющего автомата Мура на базе регистра сдвига.
- •Операційний автомат і мікропрограма додавання дробових чисел з фіксованою крапкою.
- •Операційний автомат і мікропрограма множення дробових чисел з фіксованою крапкою.
- •Двійкові-десяткові коди (д-коды) і їхньої властивості. Виконання арифметичних операцій у д-кодах.
- •Система числення в залишкових класах. Її особливість і застосування в обчислювальній техніці.
Операційний автомат і мікропрограма множення дробових чисел з фіксованою крапкою.
Устройство для умножения двоичных чисел Общий ход операции умножения в ЭВМ подобен умножению чисел вручную, но имеет некоторые отличия. Частичные произведения, получаемые при умножении на разряды множителя, не хранятся до конца операции, где они суммируются на последнем этапе ее выполнения, а каждое получаемое частичное произведение сразу же добавляется к сумме частичных произведений, накопленной при умножении на предшествующие разряды множителя. Возможны четыре варианта общей схемы умножения, различающихся порядком анализа разрядов множителя (начиная со старших или с младших разрядов) и сдвигаемым компонентом: множимым или суммой частичных произведений. Наиболее распространен вариант умножения с анализом множителя, начиная с младших разрядов, и со сдвигом суммы частичных произведений вправо при неподвижном множимом, схема которого показана на рис. 3.5 для множимого и множителя, имеющих по n цифровых разрядов.
Рис. 3.5. Вариант структуры для умножения чисел с фиксированной запятой
При такой схеме умножения выход младшего разряда регистра множителя используется для управления суммированием множителя с ранее накопленной суммой частичных произведений: единичное значение на этом выходе говорит о необходимости суммирования. Регистры, в которых хранятся множитель и сумма частичных произведений, имеют цепи сдвига вправо на один разряд. Регистр суммы частичных произведений, которая в общем случае имеет двойную длину (2n разрядов), не обязательно должен иметь такую же разрядность. Поскольку множитель в процессе умножения выдвигается из регистра, то в освобождающиеся его разряды можно заносить младшие разряды суммы частичных произведений, что позволяет сделать регистр суммы такой же длины, как и регистры множимого и множителя. Помимо собственно формирования произведения как суммы частичных произведений, необходимо также сформировать его знак и, возможно, выполнить округление. Знак произведения определяется как сумма по модулю 2 (mod2) знаков сомножителей. Сомножители в случае представления их в прямом коде перемножаются без знаков. В случае представления чисел (сомножителей и произведения) в дополнительном коде знаковый разряд множимого непосредственно участвует в умножении, а знаковый разряд множителя косвенно влияет на последний цикл умножения.
Двійкові-десяткові коди (д-коды) і їхньої властивості. Виконання арифметичних операцій у д-кодах.
Двоично-десятичная система (Д-коды).
При работе ЭВМ производится перевод чисел из десятичной системы в двоичную и наоборот, что занимает машинное время. При решении научных задач это время несущественно (данных мало, а вычисления большие и сложные), а при решении социально-экономических – наоборот (огромное количество данных при простых расчетах). Для решения задач с большим количеством данных была разработана двоично-десятичная арифметика, которая требует больше времени на вычисления, чем двоичная, но значительно сокращает время на ввод и преобразование данных. В двоично-десятичной системе каждая десятичная цифра числа заменяется полной двоичной тетрадой (Д-кодом). Т.к. тетрадой можно записать 16 цифр, а в десятичной системе их 10, возможно огромное количество вариантов Д-кодов. На практике применимы те варианты Д-кодов, в которых для каждой цифры вес (численное содержание) каждого двоичного разряда не меняется. Наибольшее распространение получили Д-коды 8421 (нормальные двоичные веса), 8421+3, 8421+6, 2421, и др..
Примеры:
510 = 0101(8421) = 0·8 + 1·4 + 0·2 + 1·1 = 510
510 = 1000(8421+3) = 1·8 + 0·4 + 0·2 + 0·1 = (5 + 3)10 (код с избытком 3 – каждая десятичная цифра записывается увеличенным на 3 двоичным числом 010 = 0011(8421+3))
510 = 1011(2421) = 1·2 + 0·4 + 1·2 + 1·1 = 510
Т.к. в любом Д-коде используется только 10 комбинаций тетрады из 16, существуют 6 запрещенных комбинаций, которые применять нельзя.
Двоично-десятичные цифры, даже при использовании кода 8421, отличаются от изображения этих же чисел двоичным числом.
4110 = 1010012 = 0100 0001(8421)
25510 = 111111112 = 0010 0101 0101(8421)
Формальные правила поразрядного сложения в Д-кодах
Для определения формальных правил поразрядного сложения чисел, представленных в Д-коде, рассмотрим те особенности, которые присущи этим кодам.
1. Наличие разрешенных и запрещенных комбинаций.
Появление запрещенной комбинации при выполнении каких-то действий над числами свидетельствует о возникновении ошибки или же о необходимости ввести корректировку результата.
2. При сложении тетрад возникает потетрадный перенос, т.е. перенос 1 в старшую тетраду, вместо десятичного поразрядного переноса.
Введем правила сложения Д-кодов. При сложении чисел в Д-коде могут возникнуть следующие случаи.
1. При сложении двух тетрад в данном разряде числа образуется сумма меньше 10, значит не требуется коррекции результата. Например: сложить две тетрады a = 0100, b = 0101 при условии, что нет переноса из младшей тетрады. с = 0100 + 0101 = 1001. Результат меньше 10.
2. Свидетельством того, что результат суммирования неправильный, является либо появление запрещенной комбинации, если 15 с 10, либо появление потетрадного переноса p = 16, что превышает значение десятичного переноса на 6. Следовательно, требуется коррекция результата в данной тетраде введением поправки, равной +0110 = 6(10).
Например:
1) Сложить a = 0101, b = 1001, при наличии переноса из младшей тетрады: p = 1: c = a + b + p = 1111 - запрещенная комбинация и нужна поправка:
1111
+ 0110
[1] 0101
т.е. результат в данной тетраде равен 0101 и образован перенос в старшую тетраду.
2) Сложить 2 тетрады a = 0111, b = 1001, p = 1
c = a + b + p = [1]0001 появился потетрадный перенос и требуется коррекция результата: с = 0001 + 0110 = 0111, p = 1 - перенос в старшую тетраду.
Рассмотрим еще один пример:
сложить a = 27910 = 0010 0111 10012 , b = 58110 = 0101 1000 00012
a = 0010 0111 1001
+ b = 0101 1000 0001
0111 1111 1010
+ 0110 0110 поправки
с = 1000 0110 0000
Здесь стрелка указывает передачу 1 десятичного переноса.
Ответ: с = 1000011000002 = 86010.
Сумматор одной тетрады, предназначенный для формирования сумматоров чисел представленных в Д-коде прямого замещения может быть реализован следующим образом:
5.3. Представление отрицательных чисел в Д-кодах
Представление Д-кода в разрядной сетке машины может осуществляться в форме либо с фиксированной, либо с плавающей запятой. При этом отрицательные числа могут представляться в прямом, обратном или дополнительном коде.
Для рассматриваемого кода Д1 с комбинацией 8421 нельзя получить обратный или дополнительный код простым инвертированием, т.к. инвертирование набора тетрад означает получение дополнения до 24 - 1 = 15. Следовательно, необходимо убрать разницу. Один из используемых при этом приемов состоит в том, что во все цифровые тетрады числа в коде Д1 добавляется 0110 и после этого производится инвертирование набора. Полученное изображение представляет собой обратный код числа. А дополнительный код получается, как обычно, добавлением 1 к младшему разряду младшей тетрады. Рассмотрим примеры:
1) представить число A = -25610 = 0. 0010 0101 01102 в обратном коде для кода Д1:
1. 0010 0101 0110
+ 0110 0110 0110 во все тетрады добавили 0110
1000 1011 1100 после инвертирования имеем
Aоб = 1. 0111 0100 0011
2) представить число A = -39810 в дополнительном коде для кода Д1:
1. 0011 1001 1000
+ 0110 0110 0110 добавляем 0110
1. 1001 1111 1110 инвертируем
0110 0000 0001
+1
AД = 1.0110 0000 0010
5.4. Выполнение операций сложения и вычитания в Д-кодах
Операции сложения и вычитания в Д-кодах выполняются над операндами по формальным правилам десятичной арифметики, описанным ранее:
1. При сложении двух положительных чисел перевод в дополнительный код исключается. В случае появления потетрадного переноса или результата больше 9 производится коррекция результата прибавлением 6.
2. Сложение отрицательных чисел выполняется аналогично сложению положительных с той лишь разницей, что результату присваивается отрицательный знак.
3. При вычитании чисел осуществляется предварительный перевод в дополнительный код, а затем сложение чисел.
Рассмотрим пример когда одно число отрицательное, а другое положительное:
1) Сложить два числа в коде Д1 A = -1000 0010 0101, B = 1001 0100 0110.
[A]l = 1. 0001 0111 0101
[B] = 0. 1001 0100 0110
1. 1010 1011 1011
+ 0110 0110 0110 поправки
[C] = 0. 0001 0010 0001
5.5. Умножение чисел в Д-кодах
Выполнение операций умножения в Д-кодах принципиально производится по классической схеме. Умножение чисел сводится к последовательному суммированию частных произведений, полученных при умножении множимого на очередную цифру множителя. Так как каждая цифра множителя представляется тетрадой, то умножение сопровождается расшифровкой значения очередной тетрады множителя и сдвигом на 4 разряда сразу. Расшифровку можно осуществить разными способами. Простейшим примером является последовательное вычитание 1 из значения тетрады до получения 0 и соответственно прибавление множимого. Надо учитывать обязательно промежуточные переполнения.