- •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.3. Преобразование чисел в различные системы счисления
Для практической деятельности актуальна задача преобразования чисел представленных в одной системе счисления в другую. Задача состоит в представлении числа в требуемой СС с основанием qтр, если оно задано в исходной системы СС с основанием qисх.
Для преобразования могут использоваться следующие методы:
- Метод подбора;
- схема Горнера;
- метод «цифра за цифрой»;
- специфическое соотношение оснований;
- через промежуточную систему счисления.
Ниже подробно будут рассмотрены методы перевода чисел из одной системы счисления в другую метод подбора, «цифра за цифрой» и метод, основанный на специфическом соотношений оснований.
Метод подбора.
Метод используется для преобразований “в уме”. Служит в основном для преобразований из десятичной в двоичную систему счисления. Метод описывается следующим алгоритмом.
Алгоритм.
Подбирается ближайшая снизу к заданному числу (текущему остатку) степень двойки, не превосходящая числа (остатка). В соответствующей позиции двоичного числа записывается единица. Промежуточные старшие позиции заполняются нулями.
Определяется разность между числом (текущим остатком) и значением подобранной степени. Разность наз. текущим остатком.
Если разность не равна 0 или не отрицательно, то переход на п.1.
Иначе: конец.
Конец
Процедура интуитивно понятна, требует знания степеней двойки. Выполняется в десятичной арифметике. Теоретически возможно использование метода для преобразования в другие системы счисления. Однако в системах отличных от двоичных, требуется в качестве вычитаемых из текущего остатка использовать не только значения степени недвоичных оснований, а их произведения на соответствующие цифры. В этом случае подбирается не только ближайшая степень основания требуемой системы счисления, но и соответствующая цифра. Поэтому для таких “ручных” преобразований метод сложен, поэтому не применяется.
В таблицах 3, 4 приведены значения некоторых степеней двойки
Таблица 3 – Степени двойки для преобразования целого числа
Степень |
|
|
|
|
|
|
|
|
|
|
|
|
Десятичный эквивалент |
2 |
4 |
8 |
16 |
32 |
64 |
128 |
256 |
512 |
1024 |
2048 |
4096 |
Таблица 4 – Степени двойки для преобразования дробного числа
Степень |
|
|
|
|
|
|
|
Десятичный эквивалент |
0,5 |
0,25 |
0,125 |
0,0625 |
0,0 3125 |
0,015625 |
0,0078125 |
Пример. Перевести число 47D в двоичную систему счисления методом подбора.
47D = 32 + 8 + 4 + 2 +1 = 25 + 23 +22 + 21 + 20 = 101111B
Метод «цифра за цифрой».
Метод “цифра за цифрой” предусматривает последовательное получение цифр кода числа.
При этом для целого числа, а равно для целой части смешанного числа преобразование выполняется с использованием операции деления, а для дробного числа (дробной части смешанного числа) с использованием операции умножения. Преобразование для каждой части имеет свои особенности, поэтому соответствующие алгоритмы целесообразно рассмотреть отдельно.
Перевод целых чисел.
Чтобы перевести целое число из одной позиционной СС в другую, его надо последовательно делить на основание новой СС до тех пор, пока остаток не станет меньше делителя. Число в новой СС записывается из остатков от последовательного деления, причем последний остаток будет старшей цифрой нового числа.
П ример . Выполнить, используя метод “цифра за цифрой”, перевод целых десятичных чисел , соответственно, в двоичную, восьмеричную и шестнадцатеричную системы счисления.
Перевод правильных дробей.
Для перевода правильных дробей необходимо исходную дробь умножить на основание СС до тех пор, пока в новой дроби не будет нужного количества цифр, которое определяется требуемой точностью вычислений.
Пример. Преобразовать десятичное число 0,375D в двоичную систему счисления.
0 .375 D В 0.375D = 0.011В
0. 375
х 2
0. 750
х 2
1. 500
х 2
1. 000
При преобразовании смешанного числа его целая и дробная часть преобразуются соответственно методами “деления лесенкой“ и “последовательного умножения“. Далее из полученных целого и дробного чисел в новой системе счисления составляется (конкетенация) преобразованное смешанное число. Целая и дробная часть числа разделяются запятой.
Метод, основанный на специфическом соотношении основании систем счисления.
Практический интерес представляют взаимные преобразования в двоичной, восьмеричной и шестнадцатеричной системах счислениях, поскольку базисы 8 и 16 являются степенями базиса 2.
Перевод смешанного 8-ричного числа в двоичную СС
1.Каждая цифра восьменричного числа заменяется соответствующей по количественному эквиваленту двоичной триадой.
2.Незначащие старшие и младшие нулевые разряды соответственно в целой и дробной части двоичного числа для “ вписывания ” в заданную разрядную сетку могут быть отброшены.
3.Положение запятой и знак числа – сохраняются.
При переводе можно воспользоваться данными таблицы 5
Таблица 5– Соответствие “триада-цифра”
000 |
001 |
010 |
011 |
100 |
101 |
110 |
111 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
|
|
|
|
|
|
|
|
Пример. Преобразовать восьмеричное число в двоичную систему счисления.
Обратное преобразование основано на том же соотношении систем счисления.
Преобразование смешанного двоичного числа в числа в восьмеричную систему счисления
1. Двоичное число разбивается на группы из трех разрядов (триады). Если в старшей триаде менее чем три цифры, то вместо отсутствующих цифр записывают нули, которые дополняют триаду до полной.
2.Если в младшей триаде менее чем три цифры, то она дополняется справа нулями до полной триады
3.Комбинация цифр в каждой триаде рассматривается как целое число, которое заменяется соответствующей восьмеричной цифрой.
4.Полученное число – число в восьмеричной системе счисления.
Пример. Преобразовать в восьмеричную систему смешанное двоичное число 110110,11101102.
Целая часть:
Дробная часть:
Итог преобразования: 166,7348.
Преобразование смешанного двоичного числа в шестнадцатеричную систему счисления
1.Каждая цифра шестнадцатеричного числа заменяется соответствующей по количественному эквиваленту двоичной тетрадой.
2.Незначащие старшие и младшие нулевые разряды соответственно в целой и дробной части двоичного числа для “ вписывания ” в заданную разрядную сетку могут быть отброшены.
3.Положение запятой и знак числа – сохраняются.
При преобразовании можно воспользоваться данными таблицы 6.
Таблица 6 – Соответствие “ цифра-тетрада”
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
0000 |
0001 |
0010 |
0011 |
0100 |
0101 |
0110 |
0111 |
Таблица 3.5 (продолжение)
8 |
9 |
A |
B |
C |
D |
E |
F |
1000 |
1001 |
1010 |
1011 |
1100 |
1101 |
1110 |
1111 |
Пример. Перевести смешанное шестнадцатеричное число в двоичную систему счисления.
Обратное преобразование основано на том же соотношении систем счисления.
Пример. Перевести дробное двоичное число в шестнадцатеричную систему счисления.
Младшая неполная тетрада исходного двоичного дробного числа дополнена до полной нулями, затем произведены замены тетрад по количественным эквивалентам.
1.4. Формы представления данных
В ЭВМ используются следующие формы представления данных:
- числа с фиксированной точкой (запятой);
- числа с плавающей точкой (запятой);
- десятичные числа;
- символьные данные.
При представлении числа X в форме с фиксированной точкой указываются знак числа (sign X) и модуль числа (mod X) в q-ичном коде. Иногда такую форму представления чисел называют естественной формой. Место точки (запятой) постоянно для всех чисел и в процессе решения задач не меняется. Знак положительного числа кодируется цифрой "0", а знак отрицательного числа – цифрой "1".
Код числа в форме с фиксированной точкой, состоящий из кода знака и q-ичного кода его модуля, называется прямым кодом q-ичного числа. Разряд прямого кода числа, в котором располагается код знака, называется знаковым разрядом кода. Разряды прямого кода числа, в которых располагается q-ичный код модуля числа, называются цифровыми разрядами кода. При записи прямого кода знаковый разряд располагается левее старшего цифрового разряда и обычно отделяется от цифровых разрядов точкой.
В общем случае разрядная сетка ЭВМ для размещения чисел в форме с фиксированной точкой показана на рис. (3.4,а). На рисунке показано n разрядов для представления целой части числа и m разрядов для – дробной части числа.
Рис.2. Формы представления чисел в ЭВМ
При заданных n и m диапазон изменения модулей чисел, коды которых могут быть представлены в данной разрядной сетке, определяется неравенством
q-m £ ïXï £ qn – q-m (1.11)
Для двоичной системы счисления это
2-m £ ïXï £ 2n – 2-m (1.12)
Соответственно максимальное и минимальное значения чисел определяются формулами:
Xmax = +(qn – q-m) (1.13)
Xmin = -(qn – q-m) (1.14)
Использование формы с фиксированной точкой для представления смешанных (с целой и дробной частью) чисел в ЭВМ практически не встречается. Как правило, используются ЭВМ либо с дробной арифметикой (n = 0), либо с целочисленной арифметикой (m = 0).
Форма представления чисел с фиксированной точкой упрощает аппаратную реализацию ЭВМ, уменьшает время выполнения машинных операций, однако при решении задач на машине необходимо постоянно следить за тем, чтобы все исходные данные, промежуточные и окончательные результаты находились в допустимом диапазоне представления чисел. Если этого не соблюдать, то возможно переполнение разрядной сетки, и результат вычислений будет неверным. От этих недостатков в значительной степени свободны ЭВМ, использующие форму представления чисел с плавающей точкой, или нормальную форму.
В нормальной форме число представляется в виде произведения
X = m qp ,
где: m – мантисса числа;
q – основание системы счисления;
p – порядок.
Для задания числа в нормальной форме требуется задать знаки мантиссы и порядка, их модули в q-ичном коде, а также основание системы счисления. Нормальная форма представления чисел неоднозначна, ибо взаимное изменение m и p приводит к перемещению точки (запятой). Отсюда произошло название формы представления чисел.
Например, десятичное число 73,28 в нормальной форме может быть записано в следующих вариантах:
X(10) = 73,28·100 = 7,328·101 = 0,7328·102 = 0,07328·103 = ... = 732,8·10-1 и т. д.
Для однозначности представления чисел в ЭВМ используется нормальная нормализованная форма, в которой положение точки всегда задается перед значащей цифрой мантиссы, т. е. выполняется условие
q-1 £ ïmï< q0 = 1 (1.15)
В общем случае разрядную сетку ЭВМ для размещения чисел в нормальной форме можно представить в виде, изображенном на рис. 1. б. Разрядная сетка содержит:
- разряд для знака мантиссы;
- r цифровых разрядов для q-ичного кода модуля мантиссы;
- разряд для кода знака порядка;
- s разрядов для q-ичного кода модуля порядка.
Диапазон представления модулей чисел в нормальной нормализованной форме определяется следующим неравенством:
(1.16)
В конкретной ЭВМ диапазон представления чисел с плавающей точкой зависит от основания системы и числа разрядов для представления порядка.
Примерами применяемых форм чисел с плавающей точкой с различными основаниями системы счисления являются:
X = m·2 p , где 1/2£ïmï<1;
X = m·8 p , где 1/8£ïmï<1;
X = m·16 p , где 1/16£ïmï<1.
При этом у одинаковых по длине форматов чисел с плавающей запятой с увеличением основания системы счисления существенно расширяется диапазон представляемых чисел.
Точность вычислений при использовании формата с плавающей точкой определяется числом разрядов мантиссы r. Она увеличивается с увеличением числа разрядов.