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

Представление чисел без знака.

Представление информации в МПС.

Привести примеры преобразования из одной системы в другую.

Вопросы

1. Как выглядит формула представления числа в восьмеричной и шестнадцатеричной системе счисления?

3. Чем вызвана необходимость использования двоичной, шестнадцатеричной систем счисления?

Вся информация в МПС представлена в двоичном виде или в виде группы битов. Бит - один двоичный разряд, представимый в виде цифры 0 или 1. Группа из 8 битов называется байтом. Для обозначения больших массивов информации приняты приставки, подобно обозначению единиц измерения физических величин. 1 килобайт (1 КБ)= 1024 байт, 1 мегабайт (МБ)= 1024 КБ, 1 гегабайт = 1024 МБ.

Имеется два типа информации, представленной в МПС. Первый тип - программа, второй - данные, над которыми программа производит действия.

Рассмотрим представление данных на примере 8-разрядного микропроцессора. Целое положительное число без знака представляется в диапазоне от 0 до 255.

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

1 ХХХХХХХ - число отрицательное.

0 ХХХХХХХ - число положительное.

ХХХХХХХ - модуль числа. Х - любая двоичная цифра (0 или 1).

Модуль числа представляется семью двоичными разрядами. Так как 2 7=128, то диапазон представления чисел принял вид - 128... -1, 0... 127, а общее количество чисел осталось равным 256. В зависимости от решаемой задачи 8 - разрядное двоичное число может представляться как число со знаком или как число без знака. Это представление существует только в сознании программиста. Микропроцессор обрабатывает числа не зная как они представляются программисту по общим правилам. Задача программиста корректировать результат обработки.

Далее ответим на вопрос как представляется модуль числа со знаком. Положительное число представляется своим прямым кодом, например 00000000 = 0,00000001 = +1,00000010 = +2,..., 01111111 = +127.

На первый взгляд кажется что 10000001 = -1, но это не так. Очевидно, что должно выполняться правило +1 - 1 = 0.

Но +10000001

00000001

10000010 не равно 0. Чтобы получить 0 к 00000001, необходимо прибавить 11111111. Проверим +00000001

11111111

1 00000000

8 значащих разрядов представляют число, равное 0, имеется перенос из старшего разряда результата. Делаем вывод, что число -1 представляется в виде 11111111. Как из положительного числа 00000001 получить противоположное ему отрицательное число -1 (11111111)? Проинвертируем число 00000001, получим 11111110, прибавим к нему 1, получим 11111111.

Подобный метод справедлив для любого числа, например для числа -5 имеем 00000101 => 1111010 => 1111011 - это представление числа -5. Можно составить таблицу

Число Представление числа
127 01111111
126 01111110
... ...
  00000000
- 1 11111111
- 2 11111110
... ...
-128 10000000

Итак, положительные числа представлены в прямом коде. Обратный код получается из прямого поразрядным инвертированием. Дополнительный код получается из обратного путем прибавления единицы. Таким образом, отрицательные числа представляются дополнительным кодом. Для закрепления +01111111 (+127)

10000000 (-128)

11111111 (-1)


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: