Материал: Программные преобразования числовой информации (96

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Московский государственный технический университет имени Н.Э. Баумана

А.Ф. Деон, С.С. Комалов, Ю.И. Терентьев

Программные преобразования числовой информации

Рекомендовано редсоветом МГТУ им. Н.Э. Баумана в качестве учебного пособия

Под редакцией Б.Г. Трусова

Москва Издательство МГТУ им. Н.Э. Баумана

2006

УДК 681.142.2 (075.8) ББК 32.973

Д11

Рецензенты: Н.В. Абакумова, В.В. Чистов

Деон А.Ф., Комалов С.С., Терентьев Ю.И.

Д11 Программные преобразования числовой информации: Учеб. пособие / Под ред. Б.Г. Трусова. – М.: Изд-во МГТУ им. Н.Э. Бау-

мана, 2006. – 36 с. ISBN 5-7038-2875-9

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

Для студентов 1-го курса МГТУ им. Н.Э. Баумана. Ил. 7. Библиогр. 2 назв.

УДК 681.142.2 (075.8) ББК 32.973

Учебное издание

Алексей Федорович Деон Сергей Сергеевич Комалов Юрий Иванович Терентьев

Программные преобразования числовой информации

Редактор А.В. Сахарова Корректор Л.И. Малютина

Компьютерная верстка Е.В. Зимакова

Подписано в печать 30.06.2006. Формат 60х84/16. Бумага офсетная.

Печ. л. 2,25. Усл. печ. л. 2,09. Уч.-изд. л. 1,95. Тираж 100 экз.

Изд № 45. Заказ

Издательство МГТУ им. Н.Э. Баумана. 105005, Москва, 2-я Бауманская, 5.

ISBN 5-7038-2875-9

© МГТУ им. Н.Э. Баумана, 2006

ВВЕДЕНИЕ

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

Используемые в пособии программы написаны на языке Pascal для консольного режима среды Delphi.

1. ПОЗИЦИОННЫЕ СИСТЕМЫ СЧИСЛЕНИЯ

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

Количество различных цифр s, употребляемых в позиционной системе, называется ее основанием. Эти цифры обозначают s целых чисел: обычно 0, 1, ... , (s – 1). В десятичной системе используются десять цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Следовательно, эта система имеет основанием число 10.

В общем случае любое число X в позиционной системе может быть представлено в виде полинома от основания s:

n

 

X(s) = xi si = xn sn + xn1sn1 ++ x1s1 +

(1)

i=−m

+ x0 s0 + x1s1 ++ xm sm .

3

Здесь в качестве коэффициентов xi могут стоять любые из s цифр, используемых в системе счисления. Они показывают, сколько единиц i-го разряда содержится в числе (n и m – номера старшего и младшего разрядов).

Краткая запись числа представляет собой последовательность соответствующих цифр:

X(s) = xn xn–1 … x1 x0, x–1 xm .

(2)

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

Например, в десятичной системе счисления число 497,108 можно представить следующим образом:

497,108 = 4 102 + 9 102 + 7 101 +1 101 + 0 102 + 8103.

В вычислительной технике помимо десятичной используют двоичную, шестнадцатеричную и восьмеричную системы счисления. Наибольшее распространение имеет двоичная система счисления. В этой системе используются только две цифры: 0 и 1. Любое число может быть представлено последовательностью двоичных цифр, например:

10101101,1012 = 1 27 + 0 26 +1 25 + 0 24 +1 23 + + 1 22 + 0 21 +1 20 +1 21 + 0 22 + 1 23.

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

В восьмеричной системе употребляют восемь цифр: 0, 1, 2, 3, 4, 5, 6, 7. Любое число в восьмеричной системе представляется последовательностью цифр (2), в которой числа xi могут принимать

4

значения от 0 до 7. Этой записи соответствует разложение числа X по степеням числа 8.

В шестнадцатеричной системе для изображения чисел употребляют 16 цифр – от 0 до 15. Чтобы одну цифру не изображать двумя символами, приходится вводить специальные обозначения для цифр, бóльших девяти. Обозначим первые десять цифр этой системы цифрами от 0 до 9, а старшие шесть цифр – латинскими буквами: десять – А, одиннадцать – В, двенадцать – С, тринадцать – D, четырнадцать – Е, пятнадцать – F.

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

Числовые данные, необходимые для решения задач, обычно вводят в машину в десятичной системе.

2. ПЕРЕВОД ЧИСЕЛ В ПОЗИЦИОННЫХ СИСТЕМАХ СЧИСЛЕНИЯ

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

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

Перевод целых чисел. Для перевода целого числа X(s) в систему счисления с основанием r необходимо по правилам исходной s-системы делить данное число X(s) на новое основание r(s) до получения целого остатка, меньшего r. Полученное частное необходимо снова делить на r до получения целого остатка, меньшего r, и так до тех пор, пока полученное частное станет меньше r. Число X(r) будет представлено последовательностью остатков деления в порядке, обратном их получению, а последнее частное будет старшей цифрой в X(r). Понятно, что таким способом удобно переводить числа из десятичной системы счисления в другие.

5

Источник: https://studfile.net/preview/16723858/