- •23.05.05(190901.65) – «Системы обеспечения движения поездов»
- •Санкт-Петербург
- •Содержание
- •Введение
- •Арифметические и логические основы эвм
- •Системы счисления
- •1.2. Системы счисления, используемые в мпт
- •1.3. Преобразование чисел в различные системы счисления
- •- Метод подбора;
- •1.5. Кодирование чисел в машине
- •1.6. Сложение чисел в машинах с фиксированной запятой
- •1.7. Логические основы эвм
- •1.7.1. Основные понятия алгебры логики
- •1.7.2. Системы логических элементов эвм
- •Контрольные вопросы (тест)
- •Управляющий блок
- •Программа
- •Выработка cu последова-
- •Выполнение операции
- •2.2. Программная модель микропроцессора Программная модель имеет второе название регистровая структура.
- •2.3. Понятие о состоянии процессора (программы). Вектор слова состояния.
- •2.4. Система команд микропроцессора кр1821вм85а. Классификация команд по назначению.
- •2.5. Структура и формат команды.
- •Операционная часть Адресная часть ля фиксации этой информации в коде команды выделяются определенные разряды или поля. Общая структура команды имеет вид:
- •2.7. Информационный обмен при выполнении команд различных типов
- •Признак «Чт» mem r на шу
- •Передача адреса 0802н из рс на ша
- •Признак «Зп» mem w на шу
- •2.8. Команды передачи управления
- •2.9. Типы программ
- •Циклические программы содержат части, которые могут повторяться многократно при различных начальных условиях. Такие повторяющиеся части называются телом цикла.
- •Принципы организации системы прерываний
- •Контрольные вопросы (тест)
- •Библиографический список
- •3.1.Программируемый таймер
- •Рг режима
- •Каналы счета содержат 16-разрядные независимые счетчики; счет осуществляется вычитанием 1 из загруженного начального значения.
- •Режим 0 – программируемая задержка
- •3.2. Программируемый параллельный интерфейс
- •Буфер данных Канал а (7-0) ка(7-0)
- •Канал с
- •Режим 0 0 0
- •Ка ввод 1
- •Кс ввод 1
- •3.3. Программируемый последовательный интерфейс (универсальный синхронно-асинхронный приемо-передатчик усапп)
- •Буфер пе-
- •Буфер приемника
- •Запрещено 0 1
- •Запрещен х 0
- •3.4. Программируемый контроллер прерываний
- •Регистр маски прерывания
- •3.5.Контроллер прямого доступа к памяти
- •Основные понятия об интерфейсе
- •Библиографический список Вопросы к экзамену
- •Приложение 2 Варианты заданий по теме «Кодирование числе в машине» Вариант 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
- •Приложение 3
- •Варианты заданий по теме
- •«Сложение чисел с фиксированной запятой»
- •Приложение 4
- •Варианты заданий на лабораторные работы по теме «Линейные программы»
- •Задание на учебную программу 1.
- •Приложение 5 Варианты заданий на лабораторные работы по теме «Разветвляющиеся программы» Задание на учебную программу 2.
- •Вариант 2
- •Вариант 4
- •Приложение 7 Варианты заданий на лабораторные работы по теме «Итоговые программы» Задание на учебную программу 4
- •Вариант 1
- •Вариант 13
- •Приложение 7 Система команд мп кр1821вм85а
- •Микропроцессоры. Особенности архитектуры.
- •Типовая архитектура микропроцессорной системы
- •Выработка cu последова-
- •Выполнение операции
- •Классификация команд по назначению.
- •Структура и формат команды.
- •Операционная часть Адресная часть ля фиксации этой информации в коде команды выделяются определенные разряды или поля. Общая структура команды имеет вид:
- •Библиографический список
- •Система команд простейшего мп
- •Прикладное программирование и основы микропроцессорной техники
1.5. Кодирование чисел в машине
Задача кодирования возникает при переходе от естественной формы представления числа к машинной форме представления.
Естественная форма предполагает:
- задание знака чисел (положительное, отрицательное) с помощью символов “+”,”–” ;
- указание на место положение запятой с помощью специального символа – разделителя “,” (запятая);
- использование для определения количественного эквивалента числа обычной системы счисления, как правило, десятичной.
Поэтому, при кодировании решаются две задачи, во- первых, кодируется знак числа, во вторых, выполняется соответствующее представление мантиссы числа.
Д иаграмма поясняет классификацию преобразований выполняемых при переходе к машинной форме представления чисел.
Рис.3. Классификация машинных кодов чисел
Кодирование знаков.
В таблице 7 приведены коды знаков для простого и модифицированного двоичного кода. В машинных представлениях чисел символы “+”,”–” заменяются их кодами в виде одной или двух цифр используемой системы счисления.
Таблица 7. Кодирование знаков чисел
Знак числа |
Код знака |
|
для простого кода |
для модифицированного кода |
|
+ |
0 |
00 |
– |
1 |
11 |
В простых кодах знак кодируется одной цифрой, в модифицированных - двумя. Коды знаков занимают старшую (левую) позицию в разрядной сетке, используемую для представления числа. Старший знаковый разряд модифицированного кода либо “вписывается” в заданную разрядную сетку , либо помешается в дополнительном разряде. При использовании n-разрядной сетки в два раза уменьшает диапазон представляемых чисел, однако, в силу простоты, именно этот способ в МПТ применяется чаще.
Как следует из классификации, при кодировании значащей части числа используются прямой, обратный и дополнительные коды.
Для получения прямого кода числа, заданного в символической форме, необходимо
1. в знаковом разряде машинного кода числа записать цифру, соответствующую коду знака числа;
2. в значащих разрядах кода записать без изменений модуль числа.
Пример. Записать двоичные целые и дробные числа A= +1011100 и B= – 0.101101 в прямых кодах.
Решение: Aпр = 0.1011100; Bпр = 1.1011010.
Так как прямой код – машинное представление числа, то необходима привязка к заданному машинному формату (байт, слово и т.п.). В примере 1 выполнена привязка к формату байт.
Пример. Записать двоичные целое и дробное числа A= –111002 и B= 0. 1012 в прямых кодах. Выполнить привязку к формату целого и дробного слова (16 разрядов или два байта).
Решение: Aпр = 1.0000000000011100; Bпр = 1.101000000000000.
Обратные и дополнительные коды предполагают изменение значащей части отрицательного числа. Такое изменение выполняется с целью замены операции вычитания чисел операцией сложения, поскольку арифметико-логические устройства (АЛУ) любой ЭВМ, в том числе и микропроцессоров, содержат только сумматоры и регистры сдвигов.
Операция вычитания заменяется операцией сложения с отрицательным числом:
А - В = А + (-В)
Для получения обратного кода отрицательного дробного или целого чисел заданных в прямом коде, необходимо:
сохранить значение знакового разряда прямого кода;
выполнить поразрядную инверсию значащей части прямого кода числа. Поразрядная инверсия выполняется путем замены в каждом разряде нулевого значения на единичное и единичного на нулевое.
Пример.
- 17D = 1.10001B = 1.10001B – прямой код
1.01110B – обратный код
Обратные преобразования.
Обратными преобразованиями называются преобразования, обеспечивающие получение из обратного кода прямого.
Для перевода отрицательного числа из обратного в прямой код при необходимо выполнить следующее.
1. сохранить знак обратного кода;
2. выполнить поразрядную инверсию значащей части обратного кода.
Процедура справедлива для формата целых и дробных чисел.
Пример. Преобразовать в прямые коды следующие числа, представленные в обратных кодах.
Решение. Исходные данные и результаты преобразований представлены в таблице.
-
Обратные коды чисел
Прямые коды, полученные после преобразования
1.0011110B
1.1100001B
01101001B
0.1101001B
1.0011001B
1.1100110B
0.1111001B
0.1111001B
Дополнительные коды числовых данных
Прямые преобразования
Для получения дополнительного кода отрицательного числа, представленного в прямом коде необходимо:
получить обратный код числа;
прибавить единицу к самому младшему разряду полученного обратного кода;
знак числа в обратном коде – сохранить.
Пример. Получить дополнительный код двоичного числа [x]пр=1.11101010000B.
Решение. [x]доп=1.00010110000B.
Обратные преобразования.
Для получения прямого кода из дополнительного возможны два варианта:
1. из исходного кода вычесть 1 из младшего разряда, затем проинвертировать все разряды, кроме знакового.
2. проинвертировать все разряды, кроме знакового, затем прибавить 1 к младшему разряду.
Для положительных целых чисел прямой, обратный и дополнительный коды совпадают.