- •Государственный университет путей сообщения
- •Программа курса.
- •Введение
- •Системы счисления
- •Формы представления чисел в машине.
- •Кодирование чисел в машине
- •Сложение чисел в машинах с фиксированной точкой
- •Библиографический список
- •Микропроцессоры. Особенности архитектуры
- •Управляющий блок
- •Программа
- •Типовая архитектура микропроцессорной системы
- •Выработка cu последова-
- •Выполнение операции
- •Программная модель микропроцессора Программная модель или регистровая структура.
- •Понятие о состоянии процессора (программы). Вектор слова состояния.
- •Старший байт адреса команды
- •Информационный обмен при выполнении команд различных типов
- •Признак «Чт» mem Rна шу
- •Передача адреса 0802н из рс на ша
- •Признак «Зп» mem w наШу
- •Библиографический список
- •Задание на контрольную работу
- •Вопросы к экзамену
- •Система команд простейшего мп
Формы представления чисел в машине.
В зависимости от назначения и конструкции ЭВМ в них применяются две формы представления чисел – естественная и нормальная.
В естественной форме число записывается в виде набора значащих цифр без указания весов и знаков сложения между ними.
24,375 – естественная форма представления числа.
В нормальной форме число имеет две составляющие – порядок и мантиссу.
24,375 = 102 х 0,24375
10 – основание СС
2 – порядок
0,24374 – мантисса
В естественной форме положение запятой строго фиксировано. Такие числа называются числами с фиксированной точкой (запятой). Машины, работающие с такими числами, называются машинами с фиксированной точкой.
В нормальной форме положение запятой в машине определяется только величиной порядка. Поэтому числа в нормальной форме называются числами с плавающей точкой, а машины, работающие с такими числами – машинами с плавающей точкой.
В ЭВМ длина числа определяется длинной разрядной сетки, т.е. тем количеством разрядов, которое отводится для представления числа.
Пусть для представления числа отводится 9 разрядов.
В машинах с фиксированной точкой:
номера разрядов
1 2 3 4 5 6 7 8 9
знак целая дробная часть
часть
В машинах с плавающей точкой:
1 2 3 4 5 6 7 8 9
знак порядок знак мантисса
порядка числа
Знаки чисел кодируются следующим образом:
«+» 0; «-« 1.
Кодирование чисел в машине
Таблица двоичного сложения.
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 0 = 1 – единица переноса в старший разряд
Таблица двоичного вычитания.
0 – 0 = 0
1 – 0 = 1
1 – 1 = 0
0 – 1 = 1 1 – заем единицы из старшего разряда
Для кодирования чисел в ЭВМ применяются прямые, обратные и дополнительные коды.
Прямой код числа образуется, если знак числа кодируется нулем (плюс) или единицей (минус), а цифровая (значащая) часть остается без изменений.
+ 8 = 0.1000
- 8 = 1.1000
Для получения обратного кода отрицательного числа знаковый разряд остается без изменений, во всех остальных разрядах (в значащей части) цифры заменяются на взаимно обратные ( 0 заменяется на 1 и наоборот ).
- 17D = 1 10001B = 1.10001B – прямой код
1.01110B – обратный код
Для получения дополнительного кода отрицательного числа сначала строится обратный код, затем к младшему разряду прибавляется единица.
- 17D = 1.10001B – прямой код
1.01110B – обратный код
1.01111B – дополнительный код
Для получения прямого кода из дополнительного возможны два варианта:
1. из исходного кода вычесть 1 из младшего разряда, затем проинвертировать все разряды, кроме знакового.
2. проинвертировать все разряды, кроме знакового, затем прибавить 1 к младшему разряду.
Запомнить правило:
Для положительных целых чисел прямой, обратный и дополнительный коды совпадают.
Сложение чисел в машинах с фиксированной точкой
При сложении возможны четыре случая.
1. A1>0; A2>0; S>0.
А1 = + 21D = 0.10101B
А2 = + 5D = 0.00101B
Т.к. оба операнда положительные, то все три кода совпадают.
0.10101
+ 0.00101
0.11010S = 26
2. A1>0; А2<0; S>0
А1 = +21 = 0.10101 0.10101
А2 = -5 = 0.00101 прямые коды 1.11010 обратные коды
0.10101
+ 1.11010
10.01111
циклический перенос
0.10000 S = +16
0.10101 0.10101
1.11011 дополнительные коды + 1.11011
1 0.10000S= 16
отбрасывается
3. А1 <0; А2>0; S<0
А1 = -21 = 1.10101 1.01010
А2 = +5 = 0.00101 прямые коды 0.00101 обратные коды
1.01010
+ 0.00101
1.01111 – обратный код суммы
1.10000 - прямой код суммы S = -16
1.01011
0.00101 дополнительные коды
1.01011
+ 0.00101
1.10000 – дополнительный код суммы
1.10000 – прямой код суммы S = -16
4. А1 <0; А2 <0; S<0
А1 = -5; А2 = -21
1.01010 1.01010
1.11010 обратные коды + 1.11010
1 1.00100
1.00101 – обратный код суммы
1.11010 – прямой код суммы S= -26
1.01011 1.01011
1.11011 дополнительные коды + 1.11011
1 1.00110 - дополнительный код
отбрасывается суммы S = -26
При сложении двух операндов с одинаковыми знаками может образоваться сумма противоположного знака.
0.10101
+ 0.10101
1.01010 - при сложении положительных операндов образовалась
отрицательная сумма
Такое явление называется переполнением разрядной сетки. Переполнение может произойти только при сложении операндов с одинаковыми знаками.
Для обнаружения переполнения разрядной сетки в знаковую часть числа вводится дополнительный разряд – разряд переполнения. Коды в этом случае называются модифицированными.
Возможные комбинации в знаковых разрядах модифицированных кодов:
00 – разрешенная комбинация (признак положительного числа)
01 – запрещенная комбинация (положительное переполнение, т.е. переполнение при сложении положительных чисел)
10 – запрещенная комбинация (отрицательное переполнение, т.е. переполнение при сложении отрицательных чисел)
11 – разрешенная комбинация (признак отрицательного числа).