Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лекции / Лекция 8 по ИТ_Представления в ЭВМ машинных кодов чисел в форме с фиксированной запятой

.docx
Скачиваний:
53
Добавлен:
17.11.2022
Размер:
202.91 Кб
Скачать

Курс лекций по дисциплине «Информационные технологии» для студентов очной формы обучения

Лекция № 8

Блок 2: «Аппаратная реализация арифметических операций над числами, представленными в машинных кодах»

Тема 2.2: «Машинные коды. Представление в ЭВМ машинных кодов чисел в форме с фиксированной запятой»

Курс – 34 акад. часа

Выпуск 1

Изменение 0

Экземпляр № 1

Лист 5/5

8. Формы представления машинных кодов чисел в ЭВМ

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

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

Машинные коды представляют собой последовательность из условных «нулей» и «единичек», а на самом деле – из двух устойчивых физических состояний устройства под названием триггер. Этими устойчивыми состояниями могут быть: намагничено или не намагничено, заряжено или не заряжено, высокое напряжение на выходе или низкое напряжение на выходе и т. д.

Поскольку для записи, хранения, считывания n-разрядных двоичных данных (машинных кодов) и выполнения других операций над ними в ЭВМ используются специальные устройства, называемые регистрами, которые в свою очередь состоят из триггеров, то одной из основных характеристик регистров является длина его разрядной сетки.

Машинные коды чисел в форме с фиксированной запятой

Ниже приведено условно-графическое изображение 9-ти разрядного регистра для представления простого машинного кода целого числа в форме с фиксированной запятой, разрядная сетка которого состоит из одного знакового и восьми значащих разрядов (рисунок 8.1):

Знак числа Число

, ←Это условная запятая, она не кодируется

Рисунок 8.1 – Условно-графическое изображение разрядной сетки 9-ти разрядного регистра для записи простого машинного кода целого числа

Правила записи знаков чисел в простых машинных кодах

Знак числа (положительный или отрицательный) также имеет свой машинный код:

- положительный знак числа кодируется «нулем» – «0»,

- отрицательный знак числа кодируется «единицей» – «1».

Для записи простых машинных кодов под знак отводится один разряд в знаковой части кода. Знаковая часть кода занимает крайнее левое положение в разрядной сетке регистра.

Правила записи в регистр простых машинных кодов чисел со знаком

Как простые, так и модифицированные машинные коды целых и дробных чисел записываются в соответствующие регистры по-разному:

  1. При внесении в регистр машинного кода целого числа его младший значащий разряд записывается в крайне правую ячейку регистра, а все старшие разряды располагаются левее, при этом оставшиеся пустыми разряды заполняются «нулями», например: простой прямой машинный код положительного десятичного числа +510 =+10120 101ПК в рассматриваемом нами случае запишется в регистр так (рисунок 8.2):

Знак числа Число

0

0

0

0

0

0

1

0

1

,

Рисунок 8.2 – Условно-графическое изображение разрядной сетки регистра, заполненной простым машинным кодом целого положительного числа 510 =+1012→ 0 101ПК

  1. При внесении в разрядную сетку машинного кода дробного числа меньшего единицы, его старший значащий разряд записывается в крайне левую ячейку той части регистра, которая отведена для размещения значащей части числа, а все его младшие разряды располагаются правее, при этом оставшиеся пустыми разряды заполняются «нулями», например: прямой машинный код отрицательного числа -0,510=-0,121 1ПК в рассматриваемом нами случае запишется в 9-ти разрядный регистр так (рисунок 8.3):

Знак числа Число

1

,

1

0

0

0

0

0

0

0

Рисунок 8.3 – Условно-графическое изображение разрядной сетки 9-ти разрядного регистра, заполненной простым прямым машинным кодом дробного отрицательного числа -0,510=-0,12 →1 1ПК

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

Правила записи знаков чисел в модифицированных машинных кодах

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

Запись знака числа (положительный или отрицательный) в модифицированном машинном коде отличается от записи в простом машинном коде тем, что под знак в модифицированном коде отводится два старших разряда (крайних слева) в разрядной сетке регистра:

- положительный знак числа изначально кодируется – «00», в результате вычислений положительный знак может стать таким – «01» (в случае переполнения разрядной сетки);

- отрицательный знак числа изначально кодируется – «11», в результате вычислений отрицательный знак может стать таким – «10» (в случае переполнения разрядной сетки).

Как видно из вышесказанного, знак числа однозначно определяется старшим знаковым разрядом.

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

Правила записи в регистр модифицированных машинных кодов чисел в форме с фиксированной запятой

Ниже представлено условно-графическое изображение 9-ти разрядного регистра для представления прямого модифицированного машинного кода целого числа в форме с фиксированной запятой, разрядная сетка которого состоит из двух знаковых и семи значащих разрядов (рисунок 8.4):

Знак числа Число

,

Рисунок 8.4 – Условно-графическое изображение разрядной сетки 9-ти разрядного регистра для записи модифицированного машинного кода целого числа

Пример записи в 9-ти разрядный регистр модифицированного прямого машинного кода целого положительного десятичного числа в форме с фиксированной запятой +510 =+101200 101ПК (рисунок 8.5):

Знак числа Число

0

0

0

0

0

0

1

0

1

,

Рисунок 8.5 – Условно-графическое изображение разрядной сетки регистра, заполненной модифицированным машинным кодом целого числа 510 =+1012→ 00 101ПК

Пример записи в 9-ти разрядный регистр модифицированного прямого машинного кода дробного отрицательного десятичного числа в форме с фиксированной запятой -0,510=-0,1211 1ПК (рисунок 8.6):

Знак числа Число

1

1

,

1

0

0

0

0

0

0

Рисунок 8.6 – Условно-графическое изображение разрядной сетки 9-ти разрядного регистра, заполненной модифицированным машинным кодом дробного отрицательного числа -0,510=-0,12 →11 1ПК