Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа№_5.docx
Скачиваний:
6
Добавлен:
22.11.2019
Размер:
47.48 Кб
Скачать

Лабораторная работа №5 Кодирование и формы представления информации в эвм

1 Цель и содержание

Познакомить студентов с формами представления чисел в памяти ЭВМ, а также записи в ней символьной информации.

Выработать навык построения машинных кодов и выполнения действия сложения в них. Научить пользоваться таблицей кодировки ASCII для представления символьной информации.

2 Теоретическое обоснование

2.1Кодирование и формы представления числовой информации в ЭВМ. Любая информация (числа, команды, записи и т. п.) представляется в ЭВМ в виде двоичных кодов фиксированной или переменной длины. Отдельные элементы двоичного кода, имеющие значение 0 или 1, называют разрядами или битами. Двоичный код состоящий из 8 разрядов носит название байта. Для записи чисел также используют 32-разрядный формат (машинное слово), 16-разрядный формат (полуслово) и 64-разрядный формат (двойное слово).

В компьютере используются следующие формы представления числовых данных:

– числа с фиксированной запятой (точкой); числа с плавающей запятой (точкой).

Представление чисел в форме с фиксированной точкой получило название естественной формы числа, представление с плавающей точкой – нормальной (нормализованной) формой числа.

В естественной форме представляются целые числа, в нормализованной форме – вещественные (целые и дробные).

При представлении числа в форме с фиксированной точкой указывается знак числа и модуль числа в q – ичном коде.

Число с плавающей точкой изображается в байтах памяти в виде мантиссы и порядка (основание системы в соответствующей степени)

В целях упрощения выполнения арифметических операций применяют специальные коды для представления чисел. Использование кодов позволяет свести операцию вычитания чисел к арифметическому сложению кодов этих чисел.

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

К машинным кодам выдвигаются следующие требования:

– разряды числа в коде жестко связаны с определенной разрядной сеткой (байт, полуслово, слово, двойное слово);

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

Например, если за основу представления кода взят один байт, то для представления числа будет отведено 7 разрядов ( с 0-го по 6-ой), а для записи кода знака один разряд (7-ой).

Для удобства записи машинных кодов условимся отделять знаковый разряд от цифровых запятой. Если количество разрядов кода в задании не указано будем предполагать, что под запись кода выделен один байт.

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

Если число положительное его обратный и дополнительный коды совпадают с прямым кодом этого числа.

Обратный код отрицательного числа получается путем инвертирования (замены 1 на 0, 0 на 1) всех разрядов прямого кода этого числа за исключением знакового.

Дополнительный код отрицательного числа получается путем прибавления единицы к младшему разряду обратного кода

Пример 4.1. Построить машинные коды числа 1710.

Для построения прямого кода:

– переведите исходное число в двоичную СС. 1710 = 100012;

1

0

0

0

1

– занесите число в разрядную сетку .

Т.к. разрядность сетки не было указана, работаем с байтом;

0

1

0

0

0

1

– в старший разряд занесите знак числа ;

0

0

0

1

0

0

0

1

– пустые разряды сетки заполняем нолями.

[17]пр = 0, 0010001.Т.к. число 17 положительное:

[17]пр = [17]обр = [17]доп = 0, 0010001.

Пример 4.2. Построить машинные коды числа -1710.

Для построения прямого кода:

– переведите исходное число в двоичную СС. -1710 = -100012;

1

0

0

0

1

– занесите число в разрядную сетку .

Т.к. разрядность сетки не было указана, работаем с байтом;

1

1

0

0

0

1

– в старший разряд занесите знак числа ;

1

0

0

1

0

0

0

1

– пустые разряды сетки заполняем нолями.

[-17]пр = 1, 0010001. Т.к. число -17 отрицательное строим отрицательный и дополнительный коды этого числа:

[-17]обр = 1, 1101110.

1 , 1101110

1

[-17]доп = 1, 1101111