Главная » Просмотр файлов » Информатика и программирование - Основы информатики

Информатика и программирование - Основы информатики (926517), страница 6

Файл №926517 Информатика и программирование - Основы информатики (Информатика и программирование - Основы информатики) 6 страницаИнформатика и программирование - Основы информатики (926517) страница 62018-01-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 6)

Пример 4.16. Перевести число 25,6875 в двоичную систему счисления.

Решение. Перевод целой и дробной частей был выполнен в примерах 4 .12 и 4 .15. Объединим результаты перевода в одно число:

25,6875 = 11001,10112. □

Десятичная система счисления может использоваться в качестве промежуточного этапа при переводе чисел из одной системы счисления в другую. Приведенные в этой главе правила позволяют перевести числа из одной системы счисления в десятичную, а из нее – в любую другую системы счисления.

Глава 5.ПРЕДСТАВЛЕНИЕ ЧИСЕЛ
И СИМВОЛОВ В ПАМЯТИ ЭВМ

5.1.Представление целых чисел в памяти ЭВМ

5.1.1.Форматы представления целых чисел

Числа в ЭВМ хранятся в соответствии с форматом. Формат – это соглашение или правила представления числа в виде последовательности бит.

Минимальная единица хранения данных в ЭВМ – 1 байт. Существуют следующие форматы представления целых чисел: байт (полуслово), слово (включает 2 байта), двойное слово (4 байта), расширенное слово (8 байт). Биты, из которых состоят эти форматы, называются разрядами. Таким образом, в байте 8 разрядов, в слове – 16 разрядов, а в двойном слове – 32 разряда. Слева находятся старшие разряды, а справа – младшие. Каждый из этих форматов может быть знаковым (Рис. 5 .4) для представления положительных и отрицательных чисел или беззнаковым (Рис. 5 .5) для представления положительных чисел.

Рис. 5.4. Знаковые форматы представления целых чисел

Знаковым является самый старший разряд. На Рис. 5 .4 знаковый разряд обозначен символом S. Если он равен 0, то число считается положительным, а если разряд равен 1, то число считается отрицательным.

Рис. 5.5. Беззнаковые форматы представления целых чисел

В общем виде диапазон значений, представляемых знаковыми форматами представления целых чисел (табл. 5 .2) определяется по формуле

–2n–1  X  2n–1 – 1,

а для беззнакового формата определяется по формуле

0  X  2n – 1,

где n – число разрядов в формате.

Таблица 5.2. Форматы представления целых чисел в ЭВМ

Формат

Число разрядов

Диапазон (границы)

Знаковый

Беззнаковый

Байт

8

–128; 127

0; 255

Слово

16

–32 768; 32767

0; 65 535

Двойное слово

32

–2 147 483 648; 2 147 483 647

0; 4 294 967 295

5.1.2.Прямой и дополнительный коды
представления двоичных чисел

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

Пример 5.17. Число 11 в прямом коде будет представляться как 0|1011п, а число –11 – как 1|1011п. □

В дополнительном коде положительное число кодируется также как и в прямом. Чтобы представить отрицательное число в дополнительном коде, существуют два способа. При представлении чисел в дополнительном коде используется операция инвертирования – замена бита на противоположный, то есть 0 на 1, а 1 на 0.

Правило 5.8. (поразрядное представление отрицательного числа в дополнительном коде) Представить модуль отрицательного числа в прямом коде и проинвертировать все разряды левее самой младшей (правой) единицы.

Пример 5.18. Представить число –11 в дополнительном коде путем инвертации разрядов.

Решение. Переведем модуль этого числа в двоичную систему: 11 = 10112 и представим его в прямом коде: 0|1011п. Самая младшая единица – последняя, поэтому ее оставляем без изменения, а остальные разряды слева инвертируем (Рис. 5 .6).

В результате получаем 1|0101д – представление числа –11 в дополнительном коде. □

Рис. 5.6. Представление числа –11 в дополнительном коде

Правило 5.9. (арифметическое представление отрицательного числа в дополнительном коде) Прибавить к отрицательному числу 2m, где m – количество разрядов в двоичном представлении или данном формате, и полученное число перевести в двоичную систему счисления. Для байта 28 = 256, для слова 216 = 65 536, для двойного слова 232 = 4 294 967 296.

Из этих правил можно сделать вывод, что положительные числа в случае увеличения числа разрядов дополняются слева нулями, а отрицательные – единицами.

Пример 5.19. Представить число –11 в дополнительном коде путем арифметических операций.

Решение. Пусть необходимо получить m = 5 разрядов дополнительного кода. Вычислим слагаемое 2m = 25 = 32. Произведем сложение и перевод в двоичную систему счисления:

–11 + 32 = 21 = 101012.

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

Для m = 8, 28 = 256:

–11 + 256 = 245 = 111101012.

Представление числа –11 было дополнено единицами слева до 8 разрядов. □

Возможно и обратное преобразование отрицательных чисел, записанных в дополнительном коде.

Правило 5.10. (поразрядное определение значения отрицательного числа, записанного в дополнительном коде) Алгоритм определения значения отрицательного числа в дополнительном коде состоит из следующих шагов.

1. Проинвертировать все разряды левее самой младшей (правой) единицы.

2. Перевести число из двоичной системы счисления в десятичную систему по правилу 4 .1.

3. Умножить результат на –1.

Пример 5.20. Определить, какое десятичное число закодировано числом 1|0101д с помощью поразрядного определения.

Решение. Проинвертируем разряды числа:

1010|1д  0101|1п.

Переведем число из двоичной системы счисления в десятичную систему счисления:

010112 = 11.

Умножим результат на –1 и получим число –11. □

Правило 5.11. (арифметическое определение отрицательного числа, записанного в дополнительном коде) Перевести двоичное число в десятичную систему счисления и вычесть из полученного числа число 2m, где m – количество разрядов в двоичном представлении.

Пример 5.21. Определить, какое десятичное число закодировано числом 1|0101д с помощью арифметического определения.

Решение. Переведем число из двоичной системы счисления в десятичную систему счисления:

101012 = 21.

Вычтем из полученного результата перевода число 2m = 25 = 32, так как двоичное число состоит из 5 разрядов:

21 – 32 = –11.

В результате получим десятичное число –11. □

Числа в знаковых форматах записываются в дополнительном коде, а в беззнаковых – в прямом.

Запись в дополнительном коде необходима, чтобы складывать и вычитать положительные и отрицательные числа без преобразований.

Пример 5.22. Сложить 21 и –11 в двоичной системе счисления.

Решение. Переведем слагаемые в дополнительный код:

21 = 0|10101д; –11 = 1|10101д.

Будем использовать правила двоичной арифметики:

0 + 0 = 0;

1 + 0 = 0 +1 = 1;

1 + 1 = 10 (с переносом единицы в следующий разряд).

Сложим два двоичных числа столбиком с учетом того, что перенос единицы из знакового разряда игнорируется:

0101012

1101012

0010102 = 10.

В результате получено число 10 – сумма 21 и –11 без дополнительных преобразований. □

Форматы целых чисел слово и двойное слово располагаются в памяти ЭВМ в обратном порядке, то есть сначала младший байт, а затем старший. Например, слово B5DE16 будет располагаться в памяти, как показано на Рис. 5 .7.

Рис. 5.7. Расположение слова B5DE16 в памяти ЭВМ

Такое расположение байт удобно при операциях с числами, так как вычисления начинаются с младших разрядов, поэтому они и располагаются сначала.

5.2.Представление вещественных чисел
в памяти ЭВМ

Вещественные числа представляются в форме числа с плавающей запятой (точкой) вида:

M  nP,

где M – мантисса (значащая часть числа); n – основание системы счисления; P – порядок числа.

Пример 5.23. Число 2,5  1018 имеет мантиссу равную 2,5, а порядок равный 18. □

Мантисса называется нормализованной, если ее абсолютное значение лежит в диапазоне:

1/n  |M| < 1,

где n – основание системы счисления.

Это условие означает, что первая цифра после запятой не равна нулю, а абсолютное значение мантиссы не превышает единицы.

Число с нормализованной мантиссой называется нормализованным.

Пример 5.24. Представить числа –245,62 и 0,00123 в форме числа с плавающей точкой.

Решение. Число –245,62 можно представить в форме числа с порядком –245,62  100. Мантисса этого числа не нормализована, поэтому поделим его на 103, увеличив при этом порядок:

–0,24562  103.

В результате число –0,24562  103 нормализовано.

Число 0,00123 в форме числа с порядком 0,00123  100 не нормализовано, так как не нормализована мантисса. Умножим мантиссу на 102, уменьшив при этом порядок:

0,123  10–2.

В результате число 0,123  10–2 нормализовано. □

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

Для основанного на стандарте IEEE-754 представления вещественного числа в ЭВМ используются m + p + 1 бит, распределяемые следующим образом (Рис. 5 .8): 1 разряд знака мантиссы; p разрядов порядка; m разрядов мантиссы.

Рис. 5.8. Структура общего формата числа с плавающей точкой

Это представление называется (m, p)-форматом.

Диапазон представления чисел X (m, p)-форматом определяется из неравенства:

 X  (1 – 2 m –1) .

При этом порядок числа P должен удовлетворять условию
–2p 1 + 1  P  2p 1 – 1

Для вещественных чисел в стандарте IEEE-754 используются (23,8)- и (52,11)-форматы, называемые одинарным и двойным вещественными форматами соответственно (табл. 5 .3).

Чтобы представить значение этих порядков, количество секунд, прошедших с момента образования планеты Земля, составляет всего 1018.

Правило 5.12. (перевод десятичных чисел в (m, p)-формат) Алгоритм перевода десятичного числа X в (m, p)-формат состоит из следующих шагов.

1. Если Х = 0, то принять знаковый разряд, порядок и мантиссу за ноль и закончить алгоритм.

2. Если X > 0, то принять знаковый разряд 0, иначе принять 1. Знаковый разряд сформирован.

3. Перевести целую и дробную часть абсолютного значения числа X в двоичную систему счисления. Если число дробное, то получить m + 1 разрядов. Принять порядок равный нулю.

Таблица 5.3. Сравнительные характеристики
вещественных форматов

Характеристики

Одинарный

Двойной

Названия в языке Турбо-Паскаль

single

double

Размер, байт/бит

4/32

8/64

Порядок p, бит

8

11

Мантисса m, бит

23

52

Смещение порядка 2p 1 – 1

127

1023

Количество значащих десятичных цифр мантиссы

7 .. 8

15 .. 16

Диапазон десятичных порядков

–45 .. 38

–324 .. 308

4. Если X  1, то перенести запятую влево до самого старшего разряда и увеличить порядок, иначе перенести запятую вправо до первого ненулевого (единичного) разряда и уменьшить порядок.

5. Если число разрядов дробной части меньше m, то дополнить дробную часть нулями справа до m разрядов. Отбросить единицу из целой части. Мантисса сформирована.

6. Прибавить к порядку смещение 2p 1 – 1 и перевести порядок в двоичную систему счисления. Порядок сформирован. Код, в котором представлен порядок, называется смещенным. Смещенный порядок упрощает сравнение, сложение и вычитание порядков при арифметических операциях.

7. Записать знаковый разряд, порядок и мантиссу в соответствующие разряды формата.

Пример 5.25. Представить число –25,6875 в одинарном вещественном формате.

Характеристики

Тип файла
Документ
Размер
5,26 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6294
Авторов
на СтудИзбе
314
Средний доход
с одного платного файла
Обучение Подробнее